您好,欢迎来到花图问答。
搜索
您的当前位置:首页2018-08-16使用router-view同页面加载多路由

2018-08-16使用router-view同页面加载多路由

来源:花图问答

描述:
用路由方式实现单页面加载多页面,并且切换页面后状态还是保存的,类似于单页面实现标签页,切换标签页实现内容显示隐藏。
正常情况是(1)把其它页面作为组件形式先引入,然后动态切换组件标签;亦或者(2)直接路由跳转到目标页面;
(1)的情况需要预先引入所有组件。
(2)的情况路由跳转了,想保存其它的页面需要写状态保存。

import codeDictManagePage from "xxxxx"
// 路由配置
routes: [
    { //  -------  配置1 -----------
      path: '',
      components: {
        default:index,
      },
      children:[
        {
          path:'',
          components:{
            codeDictManage:codeDictManagePage // codeDictManage为name
          }
        }
      ]
    },
    {//  -------  配置2 -----------
      path: '/',
      components: {
        default:Index,
        codeDictManage:codeDictManage
      }
    }
  ]

循环生成 router-view 标签,根据name不同,引入不同的路由页。例如:pageUrl = "codeDictManage",则会在router-view标签内引入codeDictManagePage页面

<!-- 循环生成 router-view 标签 -->
<router-view> <!-- 正常这里是默认default,即index页面 -->
    <router-view :name="pageUrl"></router-view><!-- 这里根据name名引入不同的页面 -->
</router-view>

注意事项:
1.地址栏如果是 “localhost:8080/”,则会使用 配置2 的路由,那么“配置1”的路由配置就不生效了。
2.如果使用“配置2”,并且“default”与“codeDictManage”的 <router-view> 标签是嵌套关系的写法,则不能引入显示“codeDictManage”路由。只能平级插入<router-view>标签。

--------------------分割线------------------------
init by xxy 2018-08-22

Copyright © 2019- huatuowenda.com 版权所有 湘ICP备2023022495号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务