San*_*gha 0 javascript arrays reactjs react-native react-redux
我有一个像这样的状态对象:
{
news: {
news: [
{
id: 1,
name: 'test1'
},
{
id: 2,
name: 'test2'
},
{
id: 3,
name: 'test3'
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
现在,我正在制作一个Ajax请求并得到我的响应:
[
{
id: 4,
name: 'test4'
},
{
id: 5,
name: 'test5'
},
{
id: 6,
name: 'test6'
}
]
Run Code Online (Sandbox Code Playgroud)
我不想改变状态,所以在我的Reducer中,如何合并这两个值,以便最终输出如下:
{
news: {
news: [
{
id: 1,
name: 'test1'
},
{
id: 2,
name: 'test2'
},
{
id: 3,
name: 'test3'
},
{
id: 4,
name: 'test4'
},
{
id: 5,
name: 'test5'
},
{
id: 6,
name: 'test6'
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我试过这样的事情,然而,它取代了整个新闻对象.
return { ...state, news: action.payload }
Run Code Online (Sandbox Code Playgroud)
action.payload具有我在响应中获得的值.我知道我可能会遗漏一些简单明了的东西.
假设action.payload是newsajax返回的数组:
return { ...state, news: { news: [...state.news.news, ...action.payload] } }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
139 次 |
| 最近记录: |