我有一个json对象,我已将我的应用程序状态设置为
class App extends Component {
constructor (props) {
super(props)
this.state = DATA;
}
json对象有一个产品对象数组。 我还想在状态中添加一个空数组。 当用户点击产品时,该阵列会将产品推入其中。 该数组不存在于json对象中。 我怎样才能将其设置为this.state = DATA;
答案 0 :(得分:3)
React状态接受对象。因此,如果您想使用空数组初始化状态,可以像这样分配
class App extends Component {
constructor (props) {
super(props)
this.state = {
data : blahblahblah,
products : []
}
}
}

例如,当您想要访问产品阵列时,可以使用
进行更新
this.setState({products : [id:'1', product_name : 'something']})

答案 1 :(得分:0)
您可以将构造函数中的状态初始化为
constructor (props) {
super(props)
this.state = {
data:DATA,
products:[]
}
}
当您选择产品时,您必须将新商品推送到产品数组中,例如
addProduct(item){
let products=[...this.state.products];
prosucts.push(item);
tis.setState({products:products});
}