【问题标题】:redux actions are duplicated when I try to fetch data当我尝试获取数据时,redux 操作重复
【发布时间】:2022-06-14 18:27:19
【问题描述】:

我正在尝试通过仅获取必要的日期来创建加载更多功能,即下一个需要添加到我在 redux 存储中的现有状态的日期,但我有一个问题,我的 redux 操作被重复。

组件 App.js

function App() {
  const dispatch = useDispatch();
  const data = useSelector(questionsData);

  useEffect(() => {
    const fetchQuestions = async () => {
      dispatch(fetchQuestionsBegin());
      try {
        const { data } = await mainUrl(`/questions?last=5`);
        return dispatch(fetchQuestionsSuccess(data));
      } catch (err) {
        return dispatch(fetchQuestionsFailure());
      }
    };
    fetchQuestions();
  }, [dispatch]);

  return (
    <>
      <div>TEST</div>
    </>
  );
}

创建商店

const store = configureStore({
  reducer: {
    questionsStore: questionsReducer,
  },
});

export default store;

切片

const initialState = {
  loading: false,
  questions: [],
  error: "",
};

const questionsSlice = createSlice({
  name: "questions",
  initialState,
  reducers: {
    fetchQuestionsBegin(state) {
      return { ...state, loading: true, error: "" };
    },
    fetchQuestionsSuccess(state, action) {
      return {
        ...state,
        loading: false,
        questions: [...state.questions, ...action.payload],
      };
    },
    fetchQuestionsFailure(state, action) {
      return { ...state, loading: false, error: action.payload };
    },
  },
});

export const { reducer: questionsReducer, actions } = questionsSlice;

export const {
  fetchQuestionsBegin,
  fetchQuestionsSuccess,
  fetchQuestionsFailure,
} = actions;

redux

当我排除 时一切正常。

【问题讨论】:

标签: reactjs redux react-redux redux-thunk redux-toolkit


猜你喜欢
  • 2019-05-24
  • 1970-01-01
  • 2012-11-28
  • 1970-01-01
  • 2018-12-29
  • 1970-01-01
  • 1970-01-01
  • 2021-06-18
  • 2020-05-05
相关资源
最近更新 更多