是否有众所周知的模式将动态初始状态的有效负载注入 Redux-Toolkit 的 initialState 对象?
也就是说,我想这样做 -
import initialState from './initialState';
function generateSlice(payload = {}){
const postsSlice = createSlice({
name: 'posts',
initialState: {...initialState, ...payload}, /// inject data here
reducers: {...}
})
}
例如,{availableRooms: []}
是一个空数组,除非在 init 上注入数据{availableRooms: [{...}]}
这种模式不起作用,但是,b/c 我想将操作导出为可调度的,就像这样-
const postsSlice = createSlice({
name: 'posts',
initialState: {...initialState, ...payload},
reducers: {...}
})
export {actionName} from postsSlice.actions;
*****
import {actionName} from '../mySlice'
...
const dispatch = useDispatch();
dispatch(actionName('exampleVal'));
...
我受到airbnb
linting 规则的限制,所以我不能在 let 上导出 -
let actions; ///Bad
function generateSlice(payload){
const postsSlice = createSlice({
name: 'posts',
initialState: {...initialState, ...payload},
reducers: {...}
})
actions = postsSlict.actions
}
export actions;
我所追求的功能在不使用createSlice
. 我提出问题的原因是我在多个地方看到createSlice
过createAction
+推荐createReducer
,但我没有看到任何简单的方法来介绍我正在寻找的动态数据。
我对此一无所知,redux-orm
但我认为我所追求的功能类似于这个 SO question