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

     效果图:

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

  • 相关阅读:
    shell语句for循环
    ls命令详解
    计算机相关概念总结(3)
    计算机相关概念总结(2)
    计算机相关概念总结(1)
    devops的概念
    jenkins无法连接gitlab
    Jenkins创建镜像后无法推送到harbor的问题
    Jenkins+gitlab+maven持续集成
    jenkins打完包在哪里
  • 原文地址:https://www.cnblogs.com/Sky-Ice/p/9298538.html
Copyright © 2011-2022 走看看