我有一个应用状态对象,它看起来像这样:
const initialState = Immutable.fromJS({
$isLoading: true,
currentPage: 0,
totalPages: 1,
results: []
});
当我从服务器获取(使用fetch
API)时,我想设置为 false,并从响应中$isLoading
合并currentPage
和输入。totalPages
到目前为止,这很容易使用merge
. 我不太确定如何优雅地合并到results
节点中。它们是Immutable.Map
s,并且应该基于_id
属性合并。有没有一种优雅的方法可以将它用于这段代码?
return state.merge({
$isLoading: false,
currentPage: res.page,
totalPages: res.pages,
results: 'something' // Take old results, merge with res.results
});