为了账号安全,请及时绑定邮箱和手机立即绑定

vue 页面间eventBus传递参数赋值不起作用

vue 页面间eventBus传递参数赋值不起作用

明月笑刀无情 2018-11-16 08:02:52
在vue页面之间传递参数,但是传递成功,赋值却不成功1、想要实现的效果:页面A有一个按钮按下之后,会进入页面B,在页面B中点击列表项就会返回页面A,并带回列表项的数据2、操作步骤:创建eventBusimport Vue from 'vue'var eventBus=new Vue({});export default eventBus;页面Bimport eventBus from 'eventBus.js'; //methods  backData(item){          eventBus.$emit('choiceAddress'item);              this.$router.go(-1);            }页面Aimport eventBus from 'eventBus.js';//mountedeventBus.$on('choiceAddress', function(data){           console.log(data);//这里可以获得data,并赋值成功            this.getAddress=data; }.bind(this));console.log("this.getAddress"+this.getAddress)//在除了上面的方法中,外面获得的this.getAddress都没有赋值成功,是初始值在页面A中可以获得页面B中传过来的参数,但是对 this.getAddress的赋值却在eventBus.$on函数之外的地方好似并没有进行赋值,仍然是原始值,比如:我想要在mounted的时候调用了一个方法,这个方法中console.log(this.getAddress);就会是原始值mounted(){    this.a(); }, methods:{    a(){     console.log(this.getAddress);     } }不是mounted中调用方法也是如此请问这个值怎么能够赋值成功呢?
查看完整描述

1 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

楼主,试试页面A获取数据的方法,写到 created 中,不要放到 mounted

查看完整回答
反对 回复 2018-11-16
  • 1 回答
  • 1 关注
  • 3223 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信