首页 > web前端 > js教程 > 正文

通过Vue属性$route的params传参

不言
发布: 2018-07-09 14:20:14
原创
13443 人浏览过

这篇文章主要介绍了关于通过Vue属性$route的params传参,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

vue传值 与 vue传参是两块东西

概念图

7236116-0547879284bcabfc[1].png原理

vue传参的原理主要在于 Vue.$route.params (也有 $route.query)

$route是Vue的属性,params是$route的属性,用来储存数据的键值对(对象形式,{key:value}),储存很多属性(键值对,属性,属性值)在里面.

清单:

通过浏览器插件vue devtools(vue 开发者工具插件)可以看的到$route属性内部的具体数据:
7236116-9ba1b155f3155445[1].png$route.params,**可以说于$route是一个中间容器**,用来容纳参数,是键值对的方式,这样在这个页面执行动作传递参数到$route.params,在另外一个页面就能从$route.params里拿参数,就这么回事.

在路由里定义

//router >> index.js
{
        path: '/Page9/:abc/:cde',
        name: 'Page9',
        component: Page9
    }
登录后复制

意思就是我要往 Vue.$route.params里储存属性"abc"和"cde",它们是作为属性名,键名key,

而属性值则由点击路由后触发路径的变化来决定具体的值.要传输什么就写什么,比如

//App.vue
<router-link to="/Page9/gigi/lkjdk7338">
          点击就跳转到page9,并同时传参到Vue.$route.params
</router-link>
登录后复制
//Page9.vue
<template>
    <p class="page1">
        <h1>{{ msg }}</h1>
        <p>{{this.$route.params}}</p>
        <h3 @click="nsj">拿数据</h3>
    </p>
</template>

<script>
    export default{
        name:&#39;Page9&#39;,
        data(){
            return{
                msg:&#39;I am Page9.vue&#39;
            }
        },
        methods:{
            nsj(){
                this.msg = this.$route.params.asd
            }
        }
        
    }
</script>
登录后复制

意思是最后Vue.$route.params会储存{"abc" : "gigi" ,"cde" : "lkjdk7338"}
image.png

或者用编程路由的写法,在脚本js里写要传的参:
html:

<p><button @click="sj1">点击就跳转到page9,并同时传参到</button></p>
登录后复制

js:

sj1() {
                this.$router.push({
                    path: &#39;/Page9&#39;,
                    name: &#39;Page9&#39;,
                    params: {
                        abc: this.mydata,
                        cde: &#39;dlj&#39;
                    }
                })
登录后复制

意思是是最后Vue.$route.params会储存{"abc" : this.mydata这个数据 ,"cde" :  ''dlj''}

如何拿值:
这就很简单了:
直接从Vue.$route.params里拿就行了
{{ $route.params.abc }} --> "gigi" 或者 this.mydata具体的值

{{ $route.params.abc }} --> " lkjdk7338 "

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

vue-router+nginx非根路径的配置方法

vue如何解决addRoutes动态添加路由后刷新失效的问题

以上是通过Vue属性$route的params传参的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!