jus*_*don 2 javascript reactjs
这可能是Ruby做得更好的东西,但有更好的方法来编写这个Javascript代码(对于React):
handleCellChange: function(rowIdx, prop, val) {
var updateObj = {};
updateObj.data = {};
updateObj.data[rowIdx] = {};
updateObj.data[rowIdx][prop] = { $set: val };
var newState = React.addons.update(this.state, updateObj);
Run Code Online (Sandbox Code Playgroud)
小智 7
在ES6中,您可以使用计算属性名称:
updateObj = { data: { [rowIdx]: { [prop]: {$set: val} } } };
Run Code Online (Sandbox Code Playgroud)
你可以在Traceur或Firefox中使用它,等等(但还没有在节点 - 和谐中).
以下是为您解释此语法的问题:https://www.npmjs.org/package/es6-computed-property-keys .
有关更多信息,请参阅http://wiki.ecmascript.org/doku.php?id=harmony:object_literals#object_literal_computed_property_keys.另请参阅http://kangax.github.io/compat-table/es6/#中的 "计算属性"项.