相关文档html
当使用路由参数时,例如从 /user/foo 导航到 /user/bar,原来的组件实例会被复用。由于两个路由都渲染同个组件,比起销毁再建立,复用则显得更加高效。不过,这也意味着组件的生命周期钩子不会再被调用。
来源于 Vue Router文档
解决方法:vue
了解到问题后,我想到一种解决方法,用计算属性与监听函数监听路由变化,触发页面数据更新函数, 试过直接监听$route,结果会触发,不过实际应用会报错,感受应该是$route是全局对象的缘由, 因此我用了计算属性将它转化为一个动态变量来监听, 我的试用正常
相关代码框架
computed: { // 计算属性的 getter onQuery: function () { // `this` 指向 vm 实例 return this.$route.params } }, watch: { 'onQuery' (old, newValue) { // 对路由变化做出响应... if (newValue) { this.getPageInfo() } } },