我有这段代码:
this.state.viaturas.map((item, index) =>
this.setState({preco: item.Preco, codigo: item.CodViatura})
)
“preco”仅保存1个项目,当viaturas.map具有多个对象且超过1个item.Preco
时。
我想保存数组中所有item.Preco
个对象。
很抱歉这个错误的解释,但我整天都在处理bug,我真的很累。
答案 0 :(得分:1)
所以这一切都是循环viaturas并用循环中的下一个项覆盖preco。如果我正确理解你想让preco成为viaturas中所有preco的数组,并且与codigo相同,那么你可以这样做:
const preco = this.state.viaturas.map(item => item.Preco);
const codigo = this.state.viaturas.map(item => item.Codviatura);
this.setState({ preco, codigo });
答案 1 :(得分:0)
您需要在一个数组上将这些值连接到您的状态。
ejem:
this.state.viaturas.map((item, index) =>
let newItem = {preco: item.Preco, codigo: item.CodViatura}
this.setState({ stateArray: this.state.stateArray.concat(newItem) }) // Initial state to "stateArray: []"
)