zoukankan      html  css  js  c++  java
  • vue-router 嵌套路由

    实际开发中,我们的应用界面,通常由多层嵌套的组件组合而成。

    举个例子,比如我想左侧是一个导航栏,右侧作为内容的展示区域,点击左侧,头部不变,左侧不变,但是右侧的内容区域改变,这就需要用到嵌套路由。

    参考 vue-router 官网就是这样的。

    下面,我们来写一下,具体的实现方式:

    首先,我们新建一个组件 User,在main.js中注册该组件,在路由配置项中,添加该组件

    main.js :

    import User from "./components/User.vue"   // 引入组件
    
    {path: '/user', component: User}   // 路由配置中,添加该项

    再创建一个 User 文件夹,里面创建两个组件 UserAdd 和 UserList 

    在 main.js 中引入

    import UserAdd from "./components/User/UserAdd.vue"
    import UserList from "./components/User/UserList.vue"

    因为,我们想要实现的效果是这样的:http://localhost:8080/user/userList  此时,页面显示 UserList 组件 http://localhost:8080/user/userAdd 此时,页面显示 UserAdd 组件 

    所以,我们在 User 组件中,分为左右两部分,点击对应项,右侧显示对应组件。如图所示:

    此时,右侧为空白.

    刚我们已经将 组件引入到 main.js 中,接着注册到路由中

    {
        path: '/user',
        component: User,
        children: [    // 子路由
          {path: "userAdd", component: UserAdd},
          {path: "userList", component: UserList}
        ]
      },

    因为要将组件展示在右侧,所以,在User中,需要引入路由视口

     <div class="right">
        <router-view></router-view>
     </div>

    为了实现点击跳转,需要在左侧列表项中添加 router-link 

     <div class="left">
        <ul>
          <li><router-link to="/user/userAdd">增加用户</router-link</li>
          <li><router-link to="/user/userList">用户列表</router-link></li>
        </ul>
    </div>

    这样就实现了嵌套路由,当我们点击增加用户时,右侧显示增加用户,地址改变为  http://localhost:8080/user/userAdd,

    当点击用户列表是,右侧显示用户列表,地址为: http://localhost:8080/user/userList

     效果图:

    ——————————————————————————————————————

  • 相关阅读:
    [论文泛读]Web服务综述相关论文1(1篇)
    [论文泛读]QoS of Web service 综述相关论文1(1篇)
    用jquery判断一个对象是否存在
    android 程序开发 R.### cannot be resolved
    发票管理及打印系统的部分代码
    项目下R.java竟然没有R.id这个类!
    C#调用ISAG网关下发彩信长征路上的一个小脚印
    机打发票打印管理
    Android获取手机和系统版本等信息的代码
    Android开发环境搭建全程演示(jdk+eclipse+android sdk)
  • 原文地址:https://www.cnblogs.com/Sky-Ice/p/9298538.html
Copyright © 2011-2022 走看看