vue-router如何传递参数(三种方法)
1.使用name传递
之前一直在配置路由的时候出现一个name,但不知道他具体有什么用,在路由里他可以用来传递参数。在index.js中将路由的name都写好
接收参数:
在我们需要接收它的页面里添加
<p>我是router-name:{{$route.name}}</p>
比如我在这里是在APP.vue中接收的,我希望切换每个页面都能看见参数。
看结果:
但这种方法不太常用,因为我们觉得它不太规整。
2. to来传递
利用router-link 中的to来传参,看语法:
<router-link v-bind:to="{name:'xxx',params:{key:value}}"></router-link>
a.首先:to需要绑定;
b.传参使用类似与对象的形式;
c.name就是我们在配置路由时候取的名字;
d.参数也是采用对象的形式。
实际操作一下:
a.在APP.vue中将to里面的路径改成上面那样
<router-link :to="{name:'hellovue',params:{username:'tomcat'}}">hellovue页面</router-link>
这里我们注意to的写法,前面加了冒号,因为那是绑定的,传递一个username过去,值为tomcat
b.在index.js里面给hellovue配置名字叫hellovue,与上面name相对应
c、在hellovue.vue中接收参数
<p>传递的名字是:{{$route.params.username}}</p>
看看结果:
3.采用url传参
在路由文件里采用冒号的形式传参,这就是对参数的绑定
a、修改index.js里的path,这里我们修改myjob.vue组件
b、在App.vue组件里传递参数
c、在myjob.vue组件里显示我们要展示的内容(接收参数)
d、看看结果
黑夜中起飞: (\.\d{1,6})* 这个"*" 是不必要的,可以是 "?" 但不应该是 ”*“
爱吃肉夹馍l: 牛皮,解决了
m0_52861211: 讲述的很好,一针见血
阿里黑黑: 直接去echarts官网看就好了,把示例里的path和数据path拼接起来就是地址,https://echarts.apache.org/examples/data/asset/data/
lilyheart1: 感谢提醒!