博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue-详解设置路由导航的两种方法: <router-link :to="..."> 和router.push(...)
阅读量:4612 次
发布时间:2019-06-09

本文共 1367 字,大约阅读时间需要 4 分钟。

一、<router-link :to="...">

  to里的值可以是一个字符串路径,或者一个描述地址的对象。例如:

// 字符串
to apple
// 对象
to apple
// 命名路由
to apple
//直接路由带查询参数query,地址栏变成 /apple?color=red
to apple
// 命名路由带查询参数query,地址栏变成/apple?color=red
to apple
//直接路由带路由参数params,params 不生效,如果提供了 path,params 会被忽略
to apple
// 命名路由带路由参数params,地址栏是/apple/red
to apple

二、router.push(...)方法

  同样的规则也适用于router.push(...)方法。

// 字符串router.push('apple')// 对象router.push({path:'apple'})// 命名路由router.push({name: 'applename'})//直接路由带查询参数query,地址栏变成 /apple?color=redrouter.push({path: 'apple', query: {color: 'red' }})// 命名路由带查询参数query,地址栏变成/apple?color=redrouter.push({name: 'applename', query: {color: 'red' }})//直接路由带路由参数params,params 不生效,如果提供了 path,params 会被忽略router.push({path:'applename', params:{ color: 'red' }})// 命名路由带路由参数params,地址栏是/apple/redrouter.push({name:'applename', params:{ color: 'red' }})

三、注意点

1、关于带参数的路由总结如下:

无论是直接路由“path" 还是命名路由“name”,带查询参数query,地址栏会变成“/url?查询参数名:查询参数值“;

直接路由“path" 带路由参数params params 不生效;
命名路由“name" 带路由参数params 地址栏保持是“/url/路由参数值”;

2、设置路由map里的path值:

 带路由参数params时,路由map里的path应该写成:  path:'/apple/:color' ;

 带查询参数query时,路由map里的path应该写成: path:'/apple' ;

3、获取参数方法:

在组件中:  {

{$route.params.color}}
在js里: this.$route.params.color

转载于:https://www.cnblogs.com/superlizhao/p/8527317.html

你可能感兴趣的文章
Python学习笔记
查看>>
unshift()与shift()
查看>>
使用 NPOI 、aspose实现execl模板公式计算
查看>>
行为型模式:中介者模式
查看>>
How to Notify Command to evaluate in mvvmlight
查看>>
33. Search in Rotated Sorted Array
查看>>
461. Hamming Distance
查看>>
Python垃圾回收机制详解
查看>>
jquery 编程的最佳实践
查看>>
MeetMe
查看>>
IP报文格式及各字段意义
查看>>
(转载)rabbitmq与springboot的安装与集成
查看>>
C2. Power Transmission (Hard Edition)(线段相交)
查看>>
STM32F0使用LL库实现SHT70通讯
查看>>
Atitit. Xss 漏洞的原理and应用xss木马
查看>>
MySQL源码 数据结构array
查看>>
(文件过多时)删除目录下全部文件
查看>>
T-SQL函数总结
查看>>
python 序列:列表
查看>>
web移动端
查看>>