问题来源
在使用uniapp开发app的时候使用了这个插件来自定义头部导航。
因为app 是在PDA设备上面运行的, 就需要监听扫描事件
问题就来了, 这个时候点击设备的返回键或者点击这个 头部组件的 返回按钮之后,是直接就进行页面的返回了( !!,前提是你进入当前页面的时候没用 uni.reLaunch 清空所有的页面来跳转的)
回到上一个页面之后就出现了一个问题, 这个页面组件的生命周期并不会重新执行(因为跳转的时候保留了页面. 其他原因不能清空页面)
这时候就出现怎么弄都不会正常的触发事件.
解决方案如下:
假如是从 A页面进入 B页面的,
这时候想从 B 返回A的话就得添加一个生命周期事件:
methods: {
},
computed: {
...mapState(["xxxxx"])
},
// 触发设备的原生返回事件时会导致上一个页面的事件监听没有正常的触发,拦截原生事件自定义处理
onBackPress() {
this.goToPage('/pages/PressoutView/PressInput')
// true 表示禁止默认返回
return true
},
这个事件得放在 B 组件才行. (我试过放在全局组件没法用)
截止: 24/5/15 代码正常