我有一个简单的函数(一个阵营组件内):如何返回带有胖箭头功能的对象而不重新绑定?
getInitialState: function() {
return {
text: this.props.text
}
}
但我想胖arrowify它:
getInitialState:() => {
text: this.props.text
}
除了我得到一个错误,因为毕竟胖箭头手段{
一段代码返回undefined(除非你明确return
东西)。至少这是我一开始就想到的。但我认为this
现在正在绑定该胖箭头功能,现在this.props
是undefined
。
所以我试试这个:
getInitialState:() => new Object({
text: this.props.text
})
,但我得到了同样的错误,this.props
是不确定的。
所以我想我有2个问题,我很好奇。首先,从一个简单的语句胖箭头函数返回对象的惯用方法是什么?其次,我该如何返回一个对象,该对象引用了周围环境的对象this
?
箭头函数保留上下文,但是当你使用'new'时它会重置'this',因此你会得到错误。如果你想要这个工作,你可以回到ES5 hack'var self = this' – Rajesh
它被称为“箭头函数”,而不是“胖箭头函数” – naomik