Apa*_*ear 1 javascript state node.js reactjs reactjs-flux
我在使用npm包React-Select时浏览了一些代码
有趣的是,我看到setState被这样使用:
handleSelectChange (value) {
console.log('You\'ve selected:', value);
this.setState({ value });
},
Run Code Online (Sandbox Code Playgroud)
setState如何这样工作?它只提供一个价值?我之所以问是因为我可能想从输入中捕获一件事然后进行更改。但这不能按预期工作。
handleSelectChange (value) {
console.log('You\'ve selected:', value);
this.setState({ value.name });
},
Run Code Online (Sandbox Code Playgroud)
完整的代码在这里,它很短:https : //github.com/JedWatson/react-select/blob/master/examples/src/components/Multiselect.js
在ES6中使用时
this.setState({ value })
Run Code Online (Sandbox Code Playgroud)
这只是的简写
this.setState({ value: value })
Run Code Online (Sandbox Code Playgroud)
这里没有其他神奇的事情发生
为了更清楚,请考虑以下示例
this.setState({ value })
Run Code Online (Sandbox Code Playgroud)
如果您想要将状态value.name设置为,则仍然必须调用必须设置的键时,将无法使用速记value
this.setState({ value: value.name })
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
606 次 |
| 最近记录: |