关于vue.js中动态路由addRoutes失效,另一种方案
在我们没用addroutes之前路边中有12个对象,但是在使用之后还是12个,这个问题研究了很久。最后想来想去还是直接从源头触发,我们目的是像路边表中添加东西,那不就是在vueRouter中options的router数组中添加对象吗?官网给的提示很多人没注意,在添加动态路由的时候404这个页面一定要在最后,不然你点了动态路由,因为他是从上到下遍历的,直接给你跳到404了。在成功的像router中
首先我们插桩测试一下我们原先的路由表是否将动态路由加进去了。 我的动态路由有两个对象,一个测试页面一个404页面。在逻辑上说添加成功后,添加的路由将显示在左侧菜单栏中。
原先的路由表中一共有12个路由对象。我们可以看到需要添加的动态路由并没有添加到原先的路由表中。
菜单中没有显示出动态路由的测试页面
在我们没用addroutes之前路边中有12个对象,但是在使用之后还是12个,这个问题研究了很久。最后想来想去还是直接从源头触发,我们目的是像路边表中添加东西,那不就是在vueRouter中options的router数组中添加对象吗?所以~
然后我们来看
在成功的像router中添加了2个路由后,在我们的左侧菜单也将测试页面显示了出来(还有个是404页面)
或者直接在路由表那里执行以下操作可以达到一样的效果,现在只做简单的测试,如果要做权限管理,可以自己根据需求更改。至少比addRoutes好理解
还有就是,我用的是vue-admin-template。官网给的提示很多人没注意,在添加动态路由的时候404这个页面一定要在最后,不然你点了动态路由,因为他是从上到下遍历的,直接给你跳到404了。
// 404 page must be placed at the end !!!
{ path: '*', redirect: '/404', hidden: true }
更多推荐
所有评论(0)