【发布时间】:2016-11-15 01:53:35
【问题描述】:
es5 中的以下代码相当于什么?
constructor(props) {
super(props);
this.state = { ...this.props };
}
【问题讨论】:
-
this.state = Object.assign({}, this.props) -
我认为 Object.assign 仍然算作 es6。 ecma-international.org/ecma-262/6.0/#sec-object.assign。使用 es5,您只需复制所有内容或在下划线或 lodash 中使用助手
-
你总是可以让 Babel 把它编译成 ES5 代码,看看它做了什么。
-
@chenkehxx:它有效,谢谢!另外,我将如何在 es5 中编写这个?
this.state = { editFlag : false, ...this.props } -
@BhushanLodha 应该是
this.state = Object.assign({editFlag: false}, this.props),或者this.state=_.extend({editFlag: false}, this.props)更容易理解。
标签: reactjs ecmascript-6 ecmascript-5