reactjs - 如果它不是对象或数组,我是否会改变我的状态?
问题描述
我知道如何避免在反应状态下改变对象和数组,但我不确定像这个例子中不是对象和数组的变量
this.state = {
cubeNumber: 0,
}
onNumberChange = (event) => {
this.setState({ [event.target.name]: event.target.value })
}
cubeArrayRender = () => {
let { cubeNumber } = this.state;
我是否通过像这样使用 parseInt 来改变状态?
let cubes = parseInt(cubeNumber, 10);
或者如果我这样写?
let cubes = cubeNumber;
cubes = 2;
如果我正在变异状态,我该如何避免它?
解决方案
根据 React文档,你不应该像这样分配状态
// Wrong
this.state.comment = 'Hello';
但只有这样:
// Correct
this.setState({comment: 'Hello'});
所以是的,你没有在代码中改变状态:)
推荐阅读
- tensorflow-hub - 无法使用 Tensorflow_hub 访问 URL
- rest - 行级安全性 (RLS) 可以在 Power BI 中以编程方式应用吗?
- c# - 无法加载文件或程序集 - 发布解决方案的程序集版本错误
- php - Laravel - 条件路由名称映射/动态路由
- python - Pandas groupby 月份输出不正确
- mapbox - 如何避免多边形被tileset剪裁?
- android - LiveData 与 StateFlow:我们应该从 Live 数据切换到 State Flow 吗?
- flutter - 用于 dart/flutter 测试的覆盖/模拟库函数
- mapbox-gl-js - mapbox-gl 可以按属性对象内的值对 geoJSON 功能进行分组吗?
- python - 在带有 Keras 的 LSTM 中使用 RobustScaler