【发布时间】:2019-10-30 03:55:38
【问题描述】:
尝试使用 Material UI 复选框。很简单的人可能会想?好吧,复选框不会切换。结果发现即使在组件内部也不会触发 onChange 事件(我将日志放在 node_modules 包中)。
<Checkbox
checked={this.state.isTrue}
onChange={e => {
console.log(e.target.checked);
this.setState({isTrue: e.target.checked});
}} />
很简单,对吧?但是console.log 永远不会触发。我可以通过在组件上放置一个onClick 事件处理程序并手动切换状态来绕过它,但这很愚蠢。有人知道吗?
API 位于 https://material-ui.com/api/checkbox/#checkbox。不是火箭科学。
【问题讨论】:
-
不确定您的代码,但请查看codesandbox.io/s/tender-saha-0ytjr 并作为一个技巧,尽可能使用函数/钩子而不是类组件:)
-
代码看起来不错,你可以在这里查看更多codesandbox.io/s/material-demo-ock3u?fontsize=14
-
很老的话题,但我建议你对
setState()使用回调
标签: javascript reactjs material-ui