我对ES6非常陌生,这是我的第一次尝试。看起来我只需要更新第一行。然而,我记得我读到过不应该使用'this‘。我很困惑。希望你能帮我修复代码。谢谢!
//当前代码
initialize: function initialize(options) {
this.item = systemChannel.request('iteminfo:request');
this.model = new someModel({
someItem: options.someItem
},
{
parse: true
});
},然后我尝试转换成ES6语法// es6版本
initialize(options) {
this.item = systemChannel.request('iteminfo:request');
this.model = new someModel({
someItem: options.someItem
},
{
parse: true
});
},这是正确的吗?
发布于 2015-12-23 03:33:37
在我看来技术上是有效的。至于你打算引用this是什么,如果不知道你声明的initialize是什么,如果还有什么是为你绑定函数,那就很难说100%了。你能发布一个更完整的例子吗?
下面是一个使用旧/新语法的this如何在对象上工作的示例。如果你想自己尝试一下,你可以在babel repl在线上运行它。
let obj = {
fn() {
return this;
}
};
var obj2 = {
fn: function() {
return this;
}
};
console.log(obj.fn() === obj); //=> true
console.log(obj2.fn() === obj2); //=> truehttps://stackoverflow.com/questions/34422932
复制相似问题