vue.js - Vuejs 2 - 从 child 到 parent 时观看路线

标签 vue.js vuejs2 vue-router

我有以下路由结构

/event/:id/schedule/:id

我想要的是,当用户转到子组件/路由时,父组件的某些元素会隐藏。当用户回到父级时,那些元素应该回来。

在父组件上,我尝试观察 $route 对象,但没有触发任何东西。在父组件的 mounted/created 方法上附加 Hook 是行不通的,因为用户仍在那些路由中。我看到了一些关于

watch(){
        $route: {
            console.log('route change');
        }
    }

我也试过这个:

route: {

        canReuse: false

    },

它不起作用,如果不起作用,我也不想使用它。

任何其他想法都会很有帮助。谢谢。

最佳答案

刚刚在 vue-router 文档中发现了一些路由 Hook /导航守卫。只是将以下内容用于父组件。

beforeRouteUpdate (to, from, next) {
        // called when the route that renders this component has changed,
        // but this component is reused in the new route.
        // For example, for a route with dynamic params /foo/:id, when we
        // navigate between /foo/1 and /foo/2, the same Foo component instance
        // will be reused, and this hook will be called when that happens.
        // has access to `this` component instance.
    },

这很好用

关于vue.js - Vuejs 2 - 从 child 到 parent 时观看路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43151075/

相关文章:

sorting - 在vue.js中对两个方向进行排序

javascript - Vue没有将数据绑定(bind)到图像src

javascript - 如何在 Vue 中的渲染列表中打开模式?

vue.js - 如何访问 Vue Js 计算属性?

vue.js - Nuxt 中同一级别上的多个动态路由可能吗?

javascript - Nuxt JS 如何正确使用 Vuex 模块模式?

javascript - VueJS - 如何拥有多个 v 槽?

vue.js - vuejs属性中的语法 `${k}`是什么?

javascript - 如何在 vue js html 的文本框中显示选定的计划值?

vue.js - 防止 vue-router 打开相同的路径