网站首页 > 技术文章 正文
vue 路由跳转方式
router-link api
// 1.to { string | Location } 表示目标路由的链接。当被点击后,内部会立刻把 to 的值传到 router.push(),所以这个值可以是一个字符串或者是描述目标位置的对象。
<!-- 字符串 -->
<router-link to="orderDetail">订单详情</router-link>
<!-- 渲染结果 -->
<a href="orderDetail">订单详情</a>
<!-- 使用 v-bind 的 JS 表达式 -->
<router-link v-bind:to="'orderDetail'">订单详情</router-link>
<!-- 不写 v-bind 也可以,就像绑定别的属性一样 -->
<router-link :to="'orderDetail'">订单详情</router-link>
<!-- 同上 -->
<router-link :to="{ path: '/orderDetail' }">订单详情</router-link>
<!-- 命名的路由 -->
<router-link :to="{ name: 'orderDetail', params: { id: 1 }}">订单详情</router-link>
<!-- 带查询参数,下面的结果为 /orderDetail?id=1 -->
<router-link :to="{ path: 'orderDetail', query: { id: '1' }}">订单详情</router-link>
// 2.replace { boolean } 设置 replace 属性的话,当点击时,会调用 router.replace() 而不是 router.push(),于是导航后不会留下 history 记录。
<router-link :to="{ path: '/orderDetail'}" replace>订单详情</router-link>
// 3.append { boolean } 设置 append 属性后,则在当前 (相对) 路径前添加基路径。例如,我们从 /a 导航到一个相对路径 b,如果没有配置 append,则路径为 /b,如果配了,则为 /a/b。
<router-link :to="{ path: 'relative/path'}" append></router-link>
// 4.tag { string } 想要 <router-link> 渲染成某种标签,例如 <li>。 于是我们使用 tag prop 类指定何种标签,同样它还是会监听点击,触发导航。
<router-link to="/orderDetail" tag="li">订单详情</router-link>
<!-- 渲染结果 -->
<li>订单详情</li>
- res.data.learnedDuration
router.push('index');
this.$router.push({
name: "orderDetail"
});
this.$router.push({
path: "/orderDetail"
});
路由传参
- 方法1
// 直接调用 $router.push 实现携带参数的跳转
this.$router.push({
path: `/orderDetail/${id}`,
})
// 对应路由配置如下:
{
path: '/orderDetail/:id',
name: 'orderDetail',
component: orderDetail
}
// 组件中获取参数的方式:
this.$route.params.id
- 方法2
// 通过路由属性中的name来确定匹配的路由,通过params来传递参数。
this.$router.push({
name: 'orderDetail',
params: {
id: 1
}
});
// 对应路由配置如下:
{
path: '/orderDetail',
name: 'orderDetail',
component: orderDetail
}
// 组件中获取参数的方式:
this.$route.params.id
- 方法3:
// 使用path来匹配路由,然后通过query来传递参数
this.$router.push({
path: '/orderDetail',
query: {
id: 1
}
});
// 对应路由配置如下:
{
path: '/orderDetail',
name: 'orderDetail',
component: orderDetail
}
// 组件中获取参数的方式:
this.$route.query.id
- 方法4
<router-link :to="{ path:'/orderDetail',query: {id: id} }">订单详情</router-link>
// 对应的路由配置如下:
{
path: '/orderDetail',
name: 'orderDetail',
component: orderDetail
}
// 组件中获取参数的方式:
this.$route.query.id
<router-link :to="{ name:'orderDetail',params: {id: id} }">订单详情</router-link>
// 对应的路由配置如下:
{
path: '/orderDetail/:id',
name: 'orderDetail',
component: orderDetail
}
// 组件中获取参数的方式:
this.$route.params.id
猜你喜欢
- 2024-09-30 Vue Router 4 路由地址详解 vue router路由配置
- 2024-09-30 「vue基础」一篇浅显易懂的 Vue 路由使用指南( Vue Router 下)
- 2024-09-30 Vue Router 4 路由操作 - 路由导航
- 2024-09-30 为什么用vue.js,为什么前端开发46%的人都在用?
- 2024-09-30 vue-router 基础:4类路由跳转示例
- 2024-09-30 Vue Router 4 动态添加路由详解 vue router动态路由配置
- 2024-09-30 Vue进阶篇-Vue Router官方路由管理器
- 2024-09-30 循序渐进Vue+Element前端应用开发(3)—动态菜单和路由的关联处理
- 2024-09-30 哈希方式实现前端路由,核心是监听哈希事件hashchange
- 2024-09-30 前端开发框架VUE之路由vue-router
你 发表评论:
欢迎- 05-10如何优化数据库和前端之间的交互?
- 05-10前端代码优化小秘籍(前端优化24条建议)
- 05-10VS Code当中的15个神仙插件,值得收藏
- 05-10如何自己开发一个Google浏览器插件?
- 05-10前端流行框架Vue3教程:14. 组件传递Props效验
- 05-10吃了一年的SU,最好用的插件都在这了
- 05-10前端必看!这款神器让网站界面告别千篇一律
- 05-10程序员请收好:10个非常有用的 Visual Studio Code 插件
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle查询数据库 (45)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)