微信小程序一些简易小函数分享
最近一直在写微信小程序,而且由于是第二次写了,所以针对很多通用的情况封装了一些函数,建议你们放在app.js
中,方便全局去调用。
提示类函数
微信有一种原生的API用于显示提示类结果的wx.showToast
,而且其中的图片是可以自定义的,所以为了保证全部一致性,而且方便调用,所以我将其全部封装在了app.js
中:
// 成功
showSuccess: function (message) {
wx.showToast({
title: message,
duration: 2000,
image: "/images/Common/Success.png",
})
},
// 错误
showError: function (message) {
wx.showToast({
title: message,
duration: 2000,
image: "/images/Common/Error.png",
})
},
// 警告
showWarn: function (message) {
wx.showToast({
title: message,
duration: 2000,
image: "/images/Common/Warn.png",
})
}
注意上面的duration
参数,这个在下面的情况中是一个很重要的问题。
假设一般的操作是对一个页面的操作完成后接着显示处理结果,最后进行跳转。所以这里就存在一个问题,假设使用上面的弹出框进行显示,那么在弹出框显示之前就会进行跳转,这样处理结果就显示不全了,所以合理的做法是在弹出框结束后进行跳转。而如果将跳转单独封装在各个页面中,那么到时候进行时间长短的处理就很麻烦了,所以我将这个函数进行了封装:
// 第一个是路由,第二个则是判断是否是tabbar的路由,跳这两个路由是不一致的
completeOperating:function(to,isTabbar){
var time=setTimeout(function(){
if(isTabbar===true){
wx.switchTab({
url:to
})
}else{
wx.navigateTo({
url: to
})
}
clearTimeout(time);
},2000)
}
还有一种情况就是我们开始将数据返回给后端,这个时候最好给用户一个加载中的提示,而这个提示可以使用wx.showLoadding
来做:
// 提示用户数据保存中
startOperating:function