【发布时间】:2017-09-19 19:56:02
【问题描述】:
在 Vue.js 中使用 eventBus 模式允许在中心位置发出事件,以便订阅监听组件可以处理此类事件。
以下代码 sn-ps 在子组件上设置侦听器,以在发生特定 UI 更改时接收更新的 Object server。
我今天遇到了一些问题,这在子组件中不起作用:
created: function() {
eventBus.$on('serverSelected', function(server) {
console.log('serverDetails, server=' + server.toString());
this.server = server;
});
},
但这确实有效:
created: function() {
eventBus.$on('serverSelected', (server) => {
console.log('serverDetails, server=' + server.toString());
this.server = server;
});
},
我相信唯一不同的是回调的 ES6 语法。但是原版的 JS 应该还能用吧?
我对 JS 很陌生。为什么会有不同,为什么只有第二个版本有效?
【问题讨论】:
-
您的问题得到解答了吗?
标签: javascript ecmascript-6 vue.js