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

vue 中$on()的this问题

vue 中$on()的this问题

吃鸡游戏 2018-08-23 20:28:22
Vue.prototype.bus=new Vue();    Vue.component('child',{         template:`<div @click='handleClick'>{{text}}</div>`,         props:{             content:[String,Number]         },        data(){            return {                 text:this.content             }         },         methods:{             handleClick(){                this.bus.$emit('change',this.text)             }         },         mounted(){            var _this=this             console.log(_this);            this.bus.$on('change',function (msg) {                     _this.text=msg                     console.log(this);             })         }     })    var vm = new Vue({         el:"#app",     })上面代码中的 this.bus.$on('change',function (msg) {                    _this.text=msg                     console.log(this);             })         }里面的回调函数里面的this到底是指向谁?希望大佬帮忙解答一下,谢谢
查看完整描述

3 回答

?
无尘粉笔

TA贡献1条经验 获得超0个赞

this指向有问题

查看完整回答
反对 回复 2020-01-03
?
MYYA

TA贡献1868条经验 获得超4个赞

Vue.prototype.bus = new Vue(); // <- 指向这个实例// 也就是说 this.bus.$on('change',function (msg) {
                    _this.text=msg                    console.log(this === _this.bus); // true
            })


查看完整回答
反对 回复 2018-08-26
  • 3 回答
  • 0 关注
  • 3263 浏览
慕课专栏
更多

添加回答

举报

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