Reactjs 状态是如何更新的?
我有以下资料:Reactjs 状态是如何更新的?,reactjs,Reactjs,我有以下资料: constructor() { super(); this.state = { lists: [], items: {} }; } handleAddList(s) { var temp= this.state.lists.slice(0,this.state.lists.length); temp.push(s); console.log(this.sta
constructor() {
super();
this.state = {
lists: [],
items: {}
};
}
handleAddList(s) {
var temp= this.state.lists.slice(0,this.state.lists.length);
temp.push(s);
console.log(this.state.items);
this.setState({lists: temp},function(){
var ourList = this.state.items;
ourList[s] = [];
console.log(this.state.items);
// var items = Object.assign({}, this.state.items, {[s]: []})
// this.setState( { items: items } );
});
}
第一个console.log显示项为空。第二个console.log显示更新的项,其中s值作为键,空数组作为值。如何更新项目
因此,本任务必须通过引用:
var ourList = this.state.items;
ourList[s] = [];
这是否意味着可以这样设置状态
我正在尝试学习react课程,如果有人能给我指出其中涉及的源代码,我将不胜感激。如果数组中的任何修改都不会在状态中得到更新,除非您使用react的
setState
方法。学习react js的最佳场所是文档