知識
不管是網站,軟件還是小程序,都要直接或間接能為您產生價值,我們在追求其視覺表現(xiàn)的同時,更側重于功能的便捷,營銷的便利,運營的高效,讓網站成為營銷工具,讓軟件能切實提升企業(yè)內部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!
微信小程序自定義模態(tài)彈窗插件
發(fā)表時間:2021-3-31
發(fā)布人:葵宇科技
瀏覽次數(shù):101
最近在寫微信小程序的時候用到了模態(tài)彈窗,但是發(fā)現(xiàn)微信官方給的wx.showModal(OBJECT)可自定義性還是太少,滿足不了某些情況下的需求。
比如,用戶點擊了蒙層,而不是點擊取消按鈕,彈窗也會去執(zhí)行取消事件,并且將彈窗關閉。文檔里并沒有屏蔽蒙層點擊事件的屬性,也沒有辦法通過其他的方式去屏蔽。
所以就寫了一個可隨意自定義的第三方彈窗插件【wxPopup】
使用方法也很簡單,在要調用彈窗的位置使用this.showModel()方法,傳入一些參數(shù),就可以將彈窗顯示出來。
this.showModel({
ModelId: 1,
ModelTitle: '標題(2)',
ModelContent: '感謝使用wxPoput自定義模態(tài)彈窗,一個可以隨意自定義樣式的微信小程序彈窗插件。已經開源到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)")
}
//關閉模態(tài)彈窗
this.setData({
isShowModel: false
})
}
可以通過判斷e.currentTarget.dataset.modelid執(zhí)行對應彈窗的事件
彈窗的顯示邏輯就是這樣,然后樣式的話大家可以隨意自定義,相信大家可以玩出更多的花樣。
最后喜歡這個插件的話就給點個贊唄!
項目地址:https://gitee.com/zhangyubk/wxPoput