如果我有以下内容:
export default class Questions extends Component {
state = {
questions: [
{value: 'value one, required: true},
{value: 'value two, required: true},
{value: 'value two, required: true}
]
};
...
...我想将中间对象的required
更改为false
,最好的方法是什么?所以我最终得到:
questions: [
{value: 'value one, required: true},
{value: 'value two, required: false},
{value: 'value two, required: true}
]
我试过了:
_toggleRequired = (index) => {
this.setState({
questions[index].required = !questions[index].required
})
};
...但它在第一个[index]
上给出了语法错误。是不是也最好返回一个新阵列而不是改变现有阵列?
TIA!
答案 0 :(得分:2)
如果您不想处理不可变对象,那么这就是我的建议。如果从当前状态创建新的对象数组,请对特定索引处的对象进行更改,然后将该对象保存为它应该完成您要执行的操作的状态。
$ pyreverse -o png -p myproject \path\to\myproject\myfile.py