简单来说,我真的很讨厌拆包然后拍平然后插入这一步骤,就算有 normalizr 也讨厌;于是写了一个小函数 mergeState(prevState, diff) 来 return 一个新的 state 其中包含了来自 diff 的改变;其中 diff 中有效信息通过递归搜索 enumerable 节点实现,所以支持 array in array, object in array, object in object, array in array 这些情况
mergeState(prevState, diff)
diff
enumerable
https://github.com/zhujinxuan/mergeState