在Vue路由器上设置默认的元属性

时间:2019-07-14 12:45:49

标签: vue.js vuejs2 vue-router

我已经搜索了文档here,尽管meta对象上有一个VueRouter属性,但它似乎没有做任何事情(关于文档中的实际属性)...

请考虑以下路线:

let routes = [
    {
        path: '/',
        component: require('./views/Home').default
    },
    {
        path: '/about',
        component: require('./views/About').default,
        meta: {
            transitionColor: '#000' // Note this property
        }
    }
];

我想做这样的事情:

export default new VueRouter({
    mode: 'history',
    routes,
    meta: {
        transitionColor: '#fff'
    }
});

以上代码的目的是将所有路由的默认$route.meta.transitionColor设置为#fff,然后如果路由级别元中提供了该路由,则允许该路由覆盖它。

是否可以通过这种方式在Vue路由器上设置默认的meta属性?

1 个答案:

答案 0 :(得分:2)

据我所知,它不存在。但是,使用navigation guards,您可以实现非常相似的功能。

router.beforeEach((to, from, next) => {
   // manipulate route (e.g. set meta)
});