在addroutes后,$router.options.routes没有更新的问题(手摸手,带你用vue撸后台 读后感)

参照《着手摸手,带你用vue撸后台》一文,本人做了前端的权限判断

https://segmentfault.com/a/1190000009275424

 

首先就是在addroutes后,$router.options.routes不会更新。因为本人的侧面导航栏是使用$router.options.routes来遍历生成的。于是就发现这个问题。

作者估计这个是个bug,已经提交issuse:https://github.com/vuejs/vue-router/issues/1859

 

说一下解决方法:

1、在addroutes前,使用router.options.routes=XXXXX的方法手动添加

2、使用作者的方法,在store里维护一个routes对象,然后使用这个对象遍历生成侧面导航栏

 

补充一个作者没有说,但是源代码里做了的小细节:

这个系统再切换用户时,路由不会动态更新。所以需要在登出函数中加上location.reload();刷新浏览器。

posted @ 2017-11-01 16:53  湛蓝玫瑰  阅读(21101)  评论(2编辑  收藏  举报