最近在寫微信小程序的時候用到了模態彈窗,但是發現微信官方給的wx.()可自定義性還是太少,滿足不了某些情況下的需求。
比如,用戶點擊了蒙層,而不是點擊取消按鈕,彈窗也會去執行取消事件微信小程序彈性盒子,并且將彈窗關閉。文檔里并沒有屏蔽蒙層點擊事件的屬性,也沒有辦法通過其他的方式去屏蔽。
所以就寫了一個可隨意自定義的第三方彈窗插件【】
使用方法也很簡單微信小程序彈性盒子,在要調用彈窗的位置使用this.()方法,傳入一些參數,就可以將彈窗顯示出來。
this.showModel({
ModelId: 1,
ModelTitle: '標題(2)',
ModelContent: '感謝使用wxPoput自定義模態彈窗,一個可以隨意自定義樣式的微信小程序彈窗插件。已經開源到GitHub上。'
})
彈窗的取消事件
//取消事件
ancel: function(e){
if (e.currentTarget.dataset.modelid == 0){
console.log("用戶點擊了取消(1)")
} else if (e.currentTarget.dataset.modelid == 1){
console.log("用戶點擊了取消(2)")
}
}
彈窗的確定事件
//確定事件
confirm: function(e){
if (e.currentTarget.dataset.modelid == 0) {
console.log("用戶點擊了確定(1)")
} else if (e.currentTarget.dataset.modelid == 1) {
console.log("用戶點擊了確定(2)")
}
//關閉模態彈窗
this.setData({
isShowModel: false
})
}
可以通過判斷e...執行對應彈窗的事件
彈窗的顯示邏輯就是這樣,然后樣式的話大家可以隨意自定義,相信大家可以玩出更多的花樣。
最后喜歡這個插件的話就給點個贊唄!