Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
486 views
in Technique[技术] by (71.8m points)

使用vue-router的addRoutes动态添加路由不生效??

前端实现路由权限控制,根据不同的角色使用不同的路由,我现在在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的内容了,但是页面依然能跳转之前路由,所以想问下既然已经替换更新了路由为什么还能访问之前的路由呢?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

清空数组清除不掉,可以刷新页面重新添加 或者你看https://github.com/vuejs/vue-...


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...