前端实现路由权限控制,根据不同的角色使用不同的路由,我现在在main.js里使用addRoutes的方法添加角色对应的路由
`new Vue({
el: '#app',
router,
store,
template: '<App/>',
components: {App},
created() {
const newrouter = [
{
path: '/',
name: 'home首页',
component: resolve => require(['@/components/home'], resolve),
redirect: '/payro/manage',
children: [
{
path: '/payro/manage',
component: resolve => require(['views/index'], resolve),
name: '首页'
},
{
path: 'test',
component: require('views/test').default,
name: '测试'
}]
}
];
console.log('刷新');
this.$router.options.routes = [];
this.$router.addRoutes(newrouter);
this.$router.options.routes = newrouter;
console.log(this.$router);
}
});`
通过console.log打印,this.$routes.options.routes里面已经是newrouter的内容了,但是页面依然能跳转之前路由,所以想问下既然已经替换更新了路由为什么还能访问之前的路由呢?
清空数组清除不掉,可以刷新页面重新添加 或者你看https://github.com/vuejs/vue-...