最外层的header和aside是通过router-view的形式加载aside右侧content页面的。但是有一个模块也是左侧aside右侧内容区域,我的疑问是里层的左右布局也应该用router来处理吗,还是说单纯写v-if来切换组件呢?另外还有一个问题,右侧整个模块是keep-alive的,那么activated应该写在每个子模块里,还是写在外层框架里。
最外层的header和aside是通过router-view的形式加载aside右侧content页面的。但是有一个模块也是左侧aside右侧内容区域,我的疑问是里层的左右布局也应该用router来处理吗,还是说单纯写v-if来切换组件呢?另外还有一个问题,右侧整个模块是keep-alive的,那么activated应该写在每个子模块里,还是写在外层框架里。
同样用router去实现
<keep-alive>
<router-view :key="$route.path"></router-view>
</keep-alive>
二级路由需要添加key,否则一级路由默认不会active
9 回答9.4k 阅读
6 回答5.1k 阅读✓ 已解决
3 回答10.5k 阅读✓ 已解决
4 回答7.4k 阅读
5 回答8.3k 阅读
2 回答10.4k 阅读✓ 已解决
2 回答6.5k 阅读✓ 已解决
第一个问题:应不应该用router来处理,个人觉得看你的切换效果需不需要浏览器的url有变化。还要考虑,一旦相似布局的模块数量变多,如果用v-if你的维护成本就高了。router比较清晰,一个路由对应一个组件。
第二个问题:activated只是个生命周期函数,写在哪取决于你要在哪个组件里面处理对应的事情。