微信小程序全局监听路由方法

在微信小程序中想要在全局监听路由的变化是有两种方法的:

1.  使用微信的隐式API, wx.onAppRoute监听路由跳转的方式来进行监听的

wx.onAppRoute((res) => {
   console.log('跳转', res)
})

2. 使用IIFE立即执行函数来重写Page函数来为每个页面添加behaviors来进行监听,也可以专门为每个页面添加不同的处理,将上面的代码放入app.js的空白处即可

const routers = require("./utils/behaviors")
(function () {
  var _page = Page;
  Page = function (options) {
    let { behaviors } = options;
    if(typeof behaviors === 'undefined') {
      behaviors = [];
    }
    if (typeof behaviors === 'string') {
      behaviors = [behaviors];
    }
    behaviors.push(routers);
    options = Object.assign({behaviors}, options)
    _page(options);
  }
})()

behaviors具体的使用参考

微信官方文档

posted @ 2022-09-10 23:10  闲人甲  阅读(2883)  评论(0编辑  收藏  举报