码迷,mamicode.com
首页 > 其他好文 > 详细

vue页面传参

时间:2018-10-04 09:07:29      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:push   就会   信息   this   页面   tab   数组   ESS   需要   

1、传的参数是数组

传递参数的页面

let setStr = encodeURIComponent(JSON.stringify(this.tableData));
this.$router.push(‘/send/setMessageSelf?setStr=‘ + setStr);

接收参数页面:

mounted(){
        let setArray = JSON.parse(this.$route.query.setStr);
        console.log(setArray);
},

解释:

  首先是let一个数组,这个数组是我要传递给另一个页面的参数,如果直接传就会变成[object object],所以我们需要通过JSON.stringify(数组)来把这个数组变成一个字符串,把它变成字符串后,如果直接传递,正常来说是没有问题的,但是当我们碰到有特殊符号的时候,比方说我们其中有一个数据是一串网址,那转换就会遇到问题,所以我们需要使encodeURIComponent()函数把转换出来的字符串进行编码,encodeURIComponent()函数可把字符串作为URI 组件进行编码,该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ‘ ( ) ,这样我们就能得到我们想要的字符串了。

  因为我们是把数组变成了字符串传过去的,所以我们在接收到这个字符串的时候,需要对它进行JSON.parse()转成我们要的数组。

2、传递的是字符串

传递参数的页面:

this.$router.push(‘/message/advise/‘ + this.id);

接收参数的页面:

id: this.$route.params.id,

路由设置:

{
     path: ‘/message/advise/:id‘,
     name: ‘活动——编辑-推荐信息‘,
     component: resolve =>void(require([‘@/views/admin/message/activityInformation/Advise‘], resolve))
},

 

vue页面传参

标签:push   就会   信息   this   页面   tab   数组   ESS   需要   

原文地址:https://www.cnblogs.com/-rainbow-/p/9740979.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!