wx.navigateBack(Object object)的使用
微信官方给出的参数及使用说明,但是可能会遇到以下一个问题。
- 使用
wx.navigateBack
返回不了
这个时候看一下你从上一个页面如何跳转到此页面的。
这里wx.reLaunch(Object object)
的使用说明是:关闭所有页面,打开到应用内的某个页面,关闭两个字很重要,如果你使用了wx.reLaunch(Object object)
进行跳转,则无法在返回此页面,如果用到wx.navigateBack
请使用wx.navigateTo(Object object)
,但是wx.navigateTo(Object object)
只能跳转到非tabbar页面
防止小程序页面刷新
- 刷新页面会触发
onLoad
和onShow
。 - 不刷新页面不会触发
onLoad
,但是会触发onShow
wx.reLaunch(Object object)
会关闭页面,再次进入就是重新加载页面,就会触发onLoad
wx.navigateTo(Object object)
不会关闭当前页面,返回后不会刷新页面,也就不会触发onLoad
,会触发onShow
小程序文本域穿透
出现原因:小程序把原生定义成层级最高的,设置z-index是没有作用的
解决方法:
- 进行操作时替换掉文本域
- 修改设计,没有任何东西覆盖在上边
授权订阅如何验证用户具体授权了那一条
wx.requestSubscribeMessage(Object object)
可以唤起授权订阅。
看下参数,tmplIds
接收一个数组,一次调用最多可订阅3条模版id。肯定会出现用户只授权了其中两条或者一天订阅模版,这个时候微信给的返回值如下图
这里微信把模版id作为键名,状态时键值。
for (let i = 0; i < templateId.length; i++) {
if (res[templateId[i]] === 'accept') {
arr.push(templateId[i])
}
}
这里可以循环一下看具体订阅了那条消息,精确匹配。但是服务端似乎不需要知道具体那一条被订阅,只需要知道有几条被订阅。