为了账号安全,请及时绑定邮箱和手机立即绑定

vue路由:路由跳转后怎么知道切换到那个router-view中

vue路由:路由跳转后怎么知道切换到那个router-view中

拉丁的传说 2018-11-13 19:58:32
应用场景首次尝试用vue 2.x重构传统页面。使用vue init webpack xxx 创建项目。登陆后index页面上有按钮可以切换页面到signin,在signin操作结束后可以退回index。按我的理解应该有个上层页面提供<router-view>,称这个router-view为view1。view1在上层页面的<template>中做切换index和signin用。在index中有个导航条,可以让内容区切换不同的显示如page1,page2。我理解在index的<template>里还应该有个<router-view>用来切换page1和page2,称这个router-view为view2。进入page1后有侧边栏,可以让内容区切换不同的显示如content1,content2。我理解在page1的<template>里也应该有个<router-view>用来切换content1和content2,称这个router-view为view3。预期index和signin可以在view1切换,page1和page2可以在view2切换,content1和content2可以在view3切换。这3个切换的入口在同一个页面上存在。问题从显示区域看:view1>view2>view3。看了普通路由、嵌套路由、命名路由的文档,感觉没有找到设计方法,this.$router.push('...')怎么知道应该驱动那个view变化呢?还是这种情况不适合this.$router.push应该用其他方法实现路由?
查看完整描述

1 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

思路是没有问题的,路由push时驱动哪个view变化是看你自己在创建路由时的路由结构,如你所说的场景大致可定义路由结构是这样的

[
    {
        path:"signin"
    },{
        path:"index",
        children:[
            {
                path:"page1",
                children:[
                    {
                        path:"content1"
                    },{
                        path:"content2"
                    }
                ]
            },{
                path:"page2"
            }
        ]
    }
]

路由跳转即push时会根据你push的path驱动相应view变化


查看完整回答
1 反对 回复 2018-11-13
  • 1 回答
  • 0 关注
  • 5718 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信