vue组件中页面传值的方式有哪些-亚博电竞手机版
web技术
2021年02月22日 07:37
0
本篇文章为大家展示了vue组件中页面传值的方式有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
一、路由传值
路由对象如下图所示:
在跳转页面的时候,在js代码中的操作如下,在标签中使用
this.$router.push({ name:'routepage', query/params:{ routeparams:params } })
需要注意的是,实用params去传值的时候,在页面刷新时,参数会消失,用query则不会有这个问题。
这样使用起来很方便,但url会变得很长,而且如果不是使用路由跳转的界面无法使用。
二、通过$parent,$chlidren等方法调取用层级关系的组件内的数据和方法
通过下面的方法调用:
this.$parent.$data.id//获取父元素data中的id this.$children.$data.id//获取父元素data中的id
这样用起来比较灵活,但是容易造成代码耦合性太强,导致维护困难
三、通过eventbus传递数据
使用前可以在全局定义一个eventbus
window.eventbus=newvue();
在需要传递参数的组件中,定义一个emit发送需要传递的值,键名可以自己定义(可以为对象)
eventbus.$emit('eventbusname',id);
在需要接受参数的组件重,用on接受该值(或对象)
//val即为传递过来的值 eventbus.$on('eventbusname',function(val){console.log(val)})
最后记住要在beforedestroy()中关闭这个eventbus
eventbus.$off('eventbusname');
上述内容就是vue组件中页面传值的方式有哪些,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注恰卡编程网行业资讯频道。
展开全文