[英]How to setState Array in ArrayObject React native
我已經坐了一段時間試圖弄清楚如何做到這一點我已經搜索了很多關於 StackOverFlow 的文檔(也許我錯過了)
this.state = {
data: {
labels: [],
datasets: [
{
data: []
}
]
}
};
我嘗試使用以下代碼如何為 2 個 arrays 標簽:[] 和數據:[] setState CONCAT
我的代碼:
this.setState(a => ({
data: {
labels: this.state.data.labels.concat(x.month), <- is this correct?
datasets: [
{
data: this.state.data.datasets.map(x=> x.data.concat(x.money/1000))
or //data: this.state.data.datasets[0].data.concat(x.money/1000))
}
]
}
}
)
)
JS
data: {
labels: [],
datasets: [
{
data: []
}
]
}
如何指向數據數組?
您可能知道,react/react-native 中的 state 更新是異步的。 因此,您編寫的代碼有時可能會導致一些奇怪的行為。 例如,同時多個 function 調用 state 更新可能會導致意外結束 state。
相反,您可以更新您的 state 如下
this.setState((state, props) => ({
data: {
labels: state.data.labels.concat(x.month),
datasets: state.data.datasets.map(({data}) => ({data: data.concat(x.money/1000)}))
}
})
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.