Vue路由嵌套和携带参数的几种方法

news/2024/6/19 5:47:38 标签: vue.js, 前端, javascript

1、路由嵌套

路由嵌套逻辑:

router.index.js中使用children嵌套子路由

javascript">//该文件专门用于创建整个文件的路由器
import VueRouter from 'vue-router'

import About from "@/pages/About";
import Home from "@/pages/Home";
import News from "@/pages/News";
import Message from "@/pages/Message";
import Detail from "@/pages/Detail";
//创建一个路由器
export default new VueRouter({
    routes:[
        {
            path:'/about',
            component:About,
            children:[

            ]
        },
        {
            path:'/home',
            component:Home,
            children:[
                {
                    path:'news',   //此处不要写/news
                    component:News,
                },
                {
                    path: 'message',
                    component: Message,
                    children:[
                        {
                            path:'detail',
                            component:Detail
                        }
                    ]

                }
            ]
        }
    ]
})

2.路由传参的几种方法

首先说一下router-link跳转路由的几种方式:

        1、不携带参数的跳转

javascript"><router-link active-class="active" to="/home/message">Message</router-link>

        2、跳转路由并且携带query参数,to的字符串写法

javascript"><router-link :to="`/home/message/detail?id=${ml.id}&title=${ml.title}`">{{ml.title}}</router-link>

        3、跳转路由并且携带query参数,to的对象写法

javascript"><router-link :to="{
          path:'/home/message/detail',
          query:{
            id:ml.id,
            title:ml.title
          }
        }">
          {{ml.title}}
        </router-link>

路由带参跳转实现过程如下:

Message.vue

javascript"><template>
  <div>
    <ul>
      <li v-for="ml in messageList" :key="ml.id">
<!--        &lt;!&ndash;跳转路由并且携带query参数,to的字符串写法&ndash;&gt;
        <router-link :to="`/home/message/detail?id=${ml.id}&title=${ml.title}`">{{ml.title}}</router-link>-->
        <router-link :to="{
          path:'/home/message/detail',
          query:{
            id:ml.id,
            title:ml.title
          }
        }">
          {{ml.title}}
        </router-link>
      </li>
    </ul>
    <router-view></router-view>
  </div>
</template>

<script>
export default {
  name: "MyMessage",
  data(){
    return{
      messageList:[
        {id:'001',title:'消息001'},
        {id:'002',title:'消息002'},
        {id:'003',title:'消息003'},
        {id:'004',title:'消息004'},
      ]
    }
  }
}
</script>

<style scoped>

</style>

Detail.vue

javascript"><template>
  <div>
    <h3>
      <ul>
        <li>{{$route.query.id}}</li>
        <li>{{$route.query.title}}</li>
      </ul>
    </h3>
  </div>

</template>

<script>
export default {
  name: "MyDetail"
}
</script>

<style scoped>

</style>


http://www.niftyadmin.cn/n/5222460.html

相关文章

2024年最受欢迎的项目管理工具盘点

十大项目管理系统包括&#xff1a;1.产品研发项目管理工具&#xff1a;PingCode&#xff1b;2.通用项目协作工具&#xff1a;Worktile&#xff1b;3.开源项目管理系统&#xff1a;Redmine&#xff1b;4.IT/敏捷项目管理系统&#xff1a;Jira&#xff1b;5.免费个人项目管理&…

放弃很容易,但坚持一定很酷——中国人民大学与加拿大女王大学金融硕士

在这个快节奏的时代&#xff0c;我们总是被各种各样的诱惑和困难所困扰&#xff0c;有时候&#xff0c;放弃似乎是一种更容易的选择。然而&#xff0c;只有那些坚持不懈的人&#xff0c;才能真正体验到成功的喜悦。真正能够让我们成长和进步的&#xff0c;往往是那些需要坚持和…

西南科技大学C++程序设计实验二(类与对象一)

C++最大的特点就是面向对象,掌握它的几种基本性质还是好理解的,可以看我C++专栏的期末速成,希望对你们学习C++有帮助。 一、实验目的 1.理解简单类的定义、说明与使用 2.理解类中不同属性数据成员的访问特点 3.理解构造函数、析构函数的作用 重点:掌握类的定义与实现,…

很清楚展示GPT插件的调用过程,人工智能(AI)的潜在危险与好处 超级智能 未来

好处&#xff0c;未来 很清楚展示GPT插件的调用过程&#xff1a; 把请求和要求发chatGPT chatGPT返回markdown格式发给插件 插件返回结果给用户。 你不用别人用。 人工智能&#xff08;AI&#xff09;的最危险之处通常与以下几个方面有关&#xff1a; 自主决策能力过强&…

美团小游戏rpk包对接流程小记

美团小游戏rpk包对接流程小记 美团小游戏开发时&#xff0c;其实很简单&#xff0c;和各大厂差不多。 一、先贴个文档&#xff1a; 美团游戏开放平台文档地址&#xff1a; https://game.meituan.com/#/docs二、接入前准备&#xff1a; 与微信抖音小游戏的流程差不多&#xf…

Hive进阶函数:inline() 和 struct() ,一列转多行

一、使用场景 如果存在一张表&#xff0c;记录的是每位学生的各科成绩&#xff0c;现在想把表转换为纵向存储 比如&#xff1a; name&#xff5c;english&#xff5c;math&#xff5c;history tom &#xff5c;80 &#xff5c;90 &#xff5c;100 转换为&#xff1a; name&…

electron打包 Error output: !include: could not find:

Error output: 2 !include: could not find: "C:\Users\xxxx(这里是中文)\AppData\Local\Temp\t-TH3KzB\0-messages.nsh" 3 Error in script "<stdin>" on line 75 -- aborting creation process这个报错意思是路径有中文存在&#xff0c;解析不到&a…

CSS问题:如何实现瀑布流布局?

前端功能问题系列文章&#xff0c;点击上方合集↑ 序言 大家好&#xff0c;我是大澈&#xff01; 本文约2500字&#xff0c;整篇阅读大约需要4分钟。 本文主要内容分三部分&#xff0c;如果您只需要解决问题&#xff0c;请阅读第一、二部分即可。如果您有更多时间&#xff…