我必须使用Immutablejs
更新数组中的所有元素JSON看起来像这样:
AAAAA|...
我只想迭代所有系列元素并将颜色更改为固定颜色"#1bf115"。
我猜你会使用更新功能。这个函数没有API文档,所以我做了很多试验错误。
我试着像这样使用它:
imState = Immutable.fromJS({
app: {
line: {
name: "Bar Chart",
series: [
{
name: "Series1x",
color: "#82ca9d"
},
{
name: "Series2x",
color: "#2239ca"
},
{
name: "Series3x",
color: "#c2a5ca"
}
]
}
}
})
但是我在 series.map 时收到了一个未定义的错误。
为什么这是错的?
答案 0 :(得分:1)
因为您提供的是深层嵌套路径,而不是update
使用updateIn
。
imState = imState.updateIn(
['app', 'line', 'series'],
series => series.map(s => s.update('color', color => "#1bf115"))
)