新聞中心
添加交互通過在組件上關(guān)聯(lián)事件實現(xiàn)。本節(jié)將介紹如何用 div、text、image 組件關(guān)聯(lián) click 事件,構(gòu)建一個如下圖所示的點贊按鈕。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名與空間、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、瀏陽網(wǎng)站維護、網(wǎng)站推廣。
圖1 點贊按鈕效果
點贊按鈕通過一個 div 組件關(guān)聯(lián) click 事件實現(xiàn)。div 組件包含一個 image 組件和一個 text 組件:
- image 組件用于顯示未點贊和點贊的效果。click 事件函數(shù)會交替更新點贊和未點贊圖片的路徑。
- text 組件用于顯示點贊數(shù),點贊數(shù)會在 click 事件的函數(shù)中同步更新。
click 事件作為一個函數(shù)定義在 js 文件中,可以更改 isPressed 的狀態(tài),從而更新顯示的 image 組件。如果 isPressed 為真,則點贊數(shù)加 1。該函數(shù)在 hml 文件中對應(yīng)的 div 組件上生效,點贊按鈕各子組件的樣式設(shè)置在 css 文件當(dāng)中。具體的實現(xiàn)示例如下:
添加交互通過在組件上關(guān)聯(lián)事件實現(xiàn)。本節(jié)將介紹如何用 div、text、image 組件關(guān)聯(lián) click 事件,構(gòu)建一個如下圖所示的點贊按鈕。
圖1 點贊按鈕效果
點贊按鈕通過一個 div 組件關(guān)聯(lián) click 事件實現(xiàn)。div 組件包含一個 image 組件和一個 text 組件:
image 組件用于顯示未點贊和點贊的效果。click 事件函數(shù)會交替更新點贊和未點贊圖片的路徑。
text 組件用于顯示點贊數(shù),點贊數(shù)會在 click 事件的函數(shù)中同步更新。
click 事件作為一個函數(shù)定義在 js 文件中,可以更改 isPressed 的狀態(tài),從而更新顯示的 image 組件。如果 isPressed 為真,則點贊數(shù)加1。該函數(shù)在 hml 文件中對應(yīng)的 div 組件上生效,點贊按鈕各子組件的樣式設(shè)置在 css 文件當(dāng)中。具體的實現(xiàn)示例如下:
{{total}}
/* xxx.css */
.like {
width: 104px;
height: 54px;
border: 2px solid #bcbcbc;
justify-content: space-between;
align-items: center;
margin-left: 72px;
border-radius: 8px;
}
.like-img {
width: 33px;
height: 33px;
margin-left: 14px;
}
.like-num {
color: #bcbcbc;
font-size: 20px;
margin-right: 17px;
}
// xxx.js
export default {
data: {
likeImage: '/common/unLike.png',
isPressed: false,
total: 20,
},
likeClick() {
var temp;
if (!this.isPressed) {
temp = this.total + 1;
this.likeImage = '/common/like.png';
} else {
temp = this.total - 1;
this.likeImage = '/common/unLike.png';
}
this.total = temp;
this.isPressed = !this.isPressed;
},
}
JS UI 框架還提供了很多表單組件,例如開關(guān)、標(biāo)簽、滑動選擇器等,以便于開發(fā)者在頁面布局時靈活使用和提高交互性,詳見容器組件。
/* xxx.css */
.like {
width: 104px;
height: 54px;
border: 2px solid #bcbcbc;
justify-content: space-between;
align-items: center;
margin-left: 72px;
border-radius: 8px;
}
.like-img {
width: 33px;
height: 33px;
margin-left: 14px;
}
.like-num {
color: #bcbcbc;
font-size: 20px;
margin-right: 17px;
}
// xxx.js
export default {
data: {
likeImage: '/common/unLike.png',
isPressed: false,
total: 20,
},
likeClick() {
var temp;
if (!this.isPressed) {
temp = this.total + 1;
this.likeImage = '/common/like.png';
} else {
temp = this.total - 1;
this.likeImage = '/common/unLike.png';
}
this.total = temp;
this.isPressed = !this.isPressed;
},
}JS UI 框架還提供了很多表單組件,例如開關(guān)、標(biāo)簽、滑動選擇器等,以便于開發(fā)者在頁面布局時靈活使用和提高交互性。
文章標(biāo)題:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS添加交互
本文網(wǎng)址:http://www.5511xx.com/article/dhcehec.html


咨詢
建站咨詢
