问题:
微信公众号分享功能的实现需要每个需要分享的页面都注入配置,
vue的路由可以使用守卫拦截
但,uni之前是没有路由的,目前出了个路由插件 http://hhyang.cn/src/router/start/introduction.html,但项目是比较早之前启动的,故而没有使用。怎么办?
解决方式1:之前的同事的做法是在原来的路由执行后劫持onload函数,重写该函数后返回配置对象。
该方法在小程序页面是没问题,但在微信公众号h5页面则出现了组件不加载。
解决方式2:uni-app本来就是改了vue的核心代码,自定义加上小程序的生命周期,那么,应该是使用vue的mixins混入去重写自定义属性才对。
经测试,果然。之前的做法不被vue允许,vue有自己的一套机制。看vue的源码了解其机制可以使我们更加简单方便的做到想做的效果。