在开始之前,请允许我说我无意在React / Redux应用程序中实现以下内容。这个问题只是假设的。
以下代码使用Redux在数组中生成Redux存储对象数组。每个商店都有能力维护它自己的内部状态对象,因为这是Redux的功能。
我的问题,虽然是一个简单的问题,是一个商店对象数组,它们能够保持自己的内部状态,不变性吗?
这个数组是否可以在整个应用程序中传递,并且通过存储数组索引将操作分配到适当的存储而不会发生变化,从而更新存储中的状态?即stores[0].dispatch({ type: 'VALUE1' })
如果数组需要删除商店,我想你可以使用array.filter
返回一个新的商店对象数组?谢谢
import { createStore } from 'redux'
const fake = function fakeReducerFunction(state, action) {
switch (action.type) {
case 'VALUE1':
// Return new state object
return
case 'VALUE2':
// Return new state object
return
default:
return
}
}
const numStores = 10
const create = function createArrayOfStores(counter = 0, array = []) {
const store = createStore(fake)
if (counter === numStores) return array
return create(counter + 1, [...array, store])
}
const stores = create()
stores[0].dispatch({ type: 'VALUE1' })