嵌套路由
嵌套路由
认识嵌套路由
-
嵌套路由是一个很常见的功能
- 比如在home页面中, 我们希望通过/home/news和/home/message访问一些内容
- 一个路径映射一个组件, 访问这两个路径也会分别渲染两个组件
-
路径和组件的关系如下:
-
实现嵌套路由有两个步骤:
- 创建对应的子组件, 并且在路由映射中配置对应的子路由.
- 在组件内部使用
<router-view>
标签
嵌套路由实现
- 我们假设已经配置好了路由,并有一个home.vue的组件和其它两个组件
- 现在我们在components创建两个组件
- homeNews.vue
- homeMessage.vue
- 在home映射关系下配置
const News = () => import('../components/homeNews')
const Message = () => import('../components/homeMessage')
{
path:'/home',
component: Home,
children: [
{
path: 'message',//子路由不用加'/'
component: Message
},
{
path: 'news',
component: News
}
]
}
- 在home.vue中使用
<router-link to="/home/news">消息</router-link>
<router-link to="/home/message">新闻</router-link>
<router-view></router-view>
嵌套默认路径
- 在children下配置映射关系
{
path: '/',
redirect:'message'
}
传递参数
- 传递递参数主要有两种类型: params和query
-
params的类型:
- 配置路由格式: /router/:id
{ path: '/user/:id', component: User }
- 传递的方式: 在path后面跟上对应的值
userid="lazy"
<router-link :to="'/user/'+userid">用户</router-link>
- 传递后形成的路径: /router/lazy
-
query的类型:
- 配置路由格式: /router, 也就是普通配置
- 传递的方式: 对象中使用query的key作为传递方式
- 传递参数方式一:
<router-link>
<router-link :to="{path: '/profile',query:{name: 'lazy',age: '18'}}">档</ router-link>
- 传递方式二:JavaScript代码,
this.$router.push({ path: '/profile', query: { name: 'lazy', age: 18 } })
- 传递参数方式一:
- 传递后形成的路径: /router?id=123, /router?id=abc
-
$route和$router的区别
- $router为VueRouter实例,想要导航到不同URL,则使用$router.push方法
- $route为当前router跳转对象里面可以获取name、path、query、params等
本文来自博客园,作者:懒惰ing,转载请注明原文链接:https://www.cnblogs.com/landuo629/p/12486432.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?