3 回答

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊
您不會(huì)從退回任何東西this.setState。您需要返回一個(gè)要與當(dāng)前狀態(tài)合并的對(duì)象。
addData(data) {
const key = data.type === 'income' ? 'income' : 'expenses';
this.setState(prevState => ({
// with Computed Property Names we can make our
// code concise and avoid conditionals
[key]: [...prevState[key], data]
}), console.log(this.state[key]));
}

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊
您的addData應(yīng)該像這樣
addData(data) {
if (data.type == 'income') {
let income=[...this.state.income];
income.push(data);
this.setState({
income:income
})
} else if (data.type == 'expense') {
let expenses=[...this.state.expenses];
expenses.push(data);
this.setState({
expenses:expenses
});
}
}
添加回答
舉報(bào)