【发布时间】:2023-01-20 16:11:23
【问题描述】:
我正在尝试在我的 React 应用程序中实现 redux 工具包,但出现上述错误。我还没有派出任何行动,因为我只是在检查我的网站是否加载。
subredditSlice.js
import { createAsyncThunk, createSlice } from "@reduxjs/toolkit";
import axios from "axios";
export const getSubredditData = createAsyncThunk(
"asyncRedux/subredditData",
async () => {
const result = await axios.get("http://127.0.0.1:500/subreddit_comments");
return result;
}
);
const subredditSlice = createSlice({
name: "subredditSlice",
initialState: {
data: {},
status: "idle",
authError: null,
},
reducers: {},
extraReducers(builder) {
builder
.addCase(getSubredditData.pending, (state, action) => {
state.status = "loading";
})
.addCase(getSubredditData.fulfilled, (state, action) => {
state.status = "succeeded";
// Add any fetched posts to the array
state.data = action.payload;
})
.addCase(getSubredditData.rejected, (state, action) => {
state.status = "failed";
state.error = action.error.message;
});
},
});
export default subredditSlice.reducer;
商店.js
import { configureStore } from "@reduxjs/toolkit";
import subredditReducer from "./Pages/Subreddit/subredditSlice";
export default configureStore({
reducer: {
subreddit: subredditReducer,
},
});
索引.js
import React from "react";
import ReactDOM from "react-dom/client";
import "./index.css";
import { RouterProvider } from "react-router-dom";
import store from "./store";
import { Provider } from "react-redux";
import App from "./App";
const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
<>
<Provider store={store} />
<App />
<Provider />
</>
);
该网站甚至没有加载,当我删除提供者标签时它工作正常,所以我得出结论,错误出在上述三个文件中的某个地方。我使用了完全相同的 redux 工具包格式,但不确定为什么现在失败了。
【问题讨论】:
-
在subreddit切片在最后一种情况下,您是在尝试修改 state.error 还是打字错误?因为该州不存在该财产
标签: reactjs redux react-redux redux-toolkit redux-thunk