在我的React组件reducer状态中,我有一个selectedTabIndex属性,指定我的UI中当前处于活动状态的选项卡。
const deviceRankReducer = (state = {
selectedIndex:1
},action) ={
//...
}
在我的Redux操作中,我想根据所选的选项卡索引进行AJAX调用。
class MyActions extends ReduxActionsBase {
sendRequest(){
if(state.selectedIndex === 0){
//make call to resource A
}else{
//make call to resource B
}
}
}
在不做出反模式决策的情况下,与ReduxActionsBase共享信息的最佳做法是什么?
答案 0 :(得分:2)
我建议使用redux-thunk。 redux-thunk
允许您调度条件和异步操作,并且您可以在操作创建者中访问Redux状态。您案例中的行动创作者将是这样的
function makeRequest() {
return (dispatch, getState) => {
const { selectedIndex } = getState();
if(state.selectedIndex === 0){
//make call to resource A
}else{
//make call to resource B
}
};
}