知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
您當(dāng)前位置>首頁 » 新聞資訊 » 小程序相關(guān) >
微信小程序開發(fā)實(shí)戰(zhàn)(16):交互組件
發(fā)表時(shí)間:2021-1-11
發(fā)布人:葵宇科技
瀏覽次數(shù):111
1. 動(dòng)作表單(ActionSheet)
iOS 程序員一定對(duì) ActionSheet 非常熟悉,這是 Cocoa Touch 很常用的 UI 組件。使用 ActionSheet 會(huì)從當(dāng)前窗口底部往上彈出一個(gè)窗口,可以在該窗口放置任何組件,例如,如圖 1 所示的一排按鈕。
圖1 ActionSheet的效果
圖 1 是小程序 ActionSheet 的效果,與 iOS ActionSheet 的效果類似。在小程序中使用 ActionSheet 要使用 標(biāo)簽,該標(biāo)簽中可以包含任意的組件,因此,可以在 ActionSheet 上放置任何小程序支持的 UI 元素。例如,下面的布局代碼放置了 4 個(gè)普通按鈕和一個(gè)“取消”按鈕,效果就是圖 1 所示的樣式。
<view style="margin:30px">
<button type="default" bindtap="actionSheetTap">彈出action sheetbutton>
<action-sheet hidden="{{actionSheetHidden}}" bindchange="actionSheetChange">
<block wx:for-items="{{actionSheetItems}}">
<action-sheet-item bindtap="bindItem{{index+1}}">{{item}}action-sheet-item>
block>
<action-sheet-cancel>取消action-sheet-cancel>
action-sheet>
view>
在這段代碼中,使用
通過 標(biāo)簽的 hidden 屬性可以控制 ActionSheet 的顯示和隱藏,該屬性值為 true ,表示隱藏 ActionSheet ,為 false ,表示顯示 ActionSheet 。通過 bindchange 屬性指定一個(gè)事件函數(shù),當(dāng)點(diǎn)擊“取消”按鈕或 ActionSheet 外部區(qū)域,會(huì)調(diào)用該函數(shù),通常在該函數(shù)中隱藏 ActionSheet 。
下面是完整的 JavaScript 實(shí)現(xiàn)代碼。
var items = ['item1', 'item2', 'item3', 'item4']
var pageObject = {
data: {
actionSheetHidden: true,
actionSheetItems: items
},
// 用于顯示和隱藏ActionSheet
actionSheetTap: function (e) {
this.setData({
actionSheetHidden: !this.data.actionSheetHidden
})
},
// 點(diǎn)擊“取消”按鈕或ActionSheet的外部區(qū)域,會(huì)調(diào)用該函數(shù)
actionSheetChange: function (e) {
console.log('actionSheetChange')
this.setData({
actionSheetHidden: !this.data.actionSheetHidden
})
},
bindItem1: function (e) {
console.log("單擊了item1");
this.setData({
actionSheetHidden: !this.data.actionSheetHidden
})
},
bindItem2: function (e) {
console.log("單擊了item2");
this.setData({
actionSheetHidden: !this.data.actionSheetHidden
})
},
bindItem3: function (e) {
console.log("單擊了item3");
this.setData({
actionSheetHidden: !this.data.actionSheetHidden
})
},
bindItem4: function (e) {
console.log("單擊了item4");
this.setData({
actionSheetHidden: !this.data.actionSheetHidden
})
}
}
Page(pageObject)
顯示 ActionSheet 后,當(dāng)點(diǎn)擊“取消”按鈕或 ActionSheet 外部區(qū)域,會(huì)在 Console 中輸出如圖 2 所示的日志信息。然后 ActionSheet 會(huì)隱藏(因?yàn)?/span> actionSheetHidden 變量被設(shè)為 true )。
圖2 點(diǎn)擊“取消”按鈕輸出的日志信息
在標(biāo)簽中可以放置任何組件,例如,下面的布局代碼除了前面的5個(gè)按鈕外,還放置了一個(gè)標(biāo)簽。
<view style="margin:30px">
… …
<image src="http://geekori.cn/img/weixin_code.png"
style="height:300px;width:300px"/>
action-sheet>
view>
2 對(duì)話框
在小程序中,對(duì)話框需要使用
<view>
<modal title="標(biāo)題" confirm-text="確定" cancel-text="取消" hidden="{{modalHidden}}" bindconfirm="modalChange" bindcancel="modalChange">
這是對(duì)話框的內(nèi)容。modal>
<modal hidden="{{modalHidden2}}" no-cancel bindconfirm="modalChange2"
bindcancel="modalChange2">
<view> 沒有標(biāo)題沒有取消的對(duì)話框 view>
<view> 內(nèi)容可以插入節(jié)點(diǎn) view>
modal>
<view class="btn-area">
<button type="default" bindtap="modalTap">點(diǎn)擊彈出modalbutton>
<button type="default" bindtap="modalTap2">點(diǎn)擊彈出modal2button>
view>
view>
現(xiàn)在分別點(diǎn)擊第一個(gè)按鈕和第二個(gè)按鈕,會(huì)顯示如圖 4 和圖 5 所示的對(duì)話框。
圖4 帶“確定”和“取消”按鈕的對(duì)話框
圖5 不帶“取消”按鈕的對(duì)話框
點(diǎn)擊“確定”或“取消”按鈕,會(huì)關(guān)閉對(duì)話框。實(shí)際上,這里指的關(guān)閉,就是隱藏
Page({
data: {
modalHidden: true,
modalHidden2: true
},
modalTap: function(e) {
this.setData({
modalHidden: false
})
},
modalChange: function(e) {
this.setData({
modalHidden: true
})
},
modalTap2: function(e) {
this.setData({
modalHidden2: false
})
},
modalChange2: function(e) {
this.setData({
modalHidden2: true
})
},
})
相關(guān)案例查看更多
相關(guān)閱讀
- 百度快速排名
- 貴州小程序開發(fā)
- 網(wǎng)站排名優(yōu)化
- 網(wǎng)站建設(shè)公司網(wǎng)站
- 云南省城鄉(xiāng)建設(shè)廳網(wǎng)站
- 云南小程序開發(fā)公司哪家好
- 二叉樹
- 微信小程序
- 生成海報(bào)
- 昆明小程序哪家好
- 百度小程序公司
- 云南企業(yè)網(wǎng)站
- 云南網(wǎng)站建設(shè)公司地址
- 小程序模板開發(fā)公司
- 云南網(wǎng)絡(luò)營(yíng)銷
- 云南網(wǎng)站建設(shè)價(jià)格
- 網(wǎng)站沒排名
- 云南小程序定制
- 云南網(wǎng)站建設(shè)百度官方
- 人人商城
- 小程序的開發(fā)公司
- 小程序
- 分銷系統(tǒng)
- 網(wǎng)站建設(shè)高手
- 云南建站公司
- web
- 出入小程序
- 云南小程序開發(fā)
- 網(wǎng)頁制作
- vue開發(fā)小程序