预期有 0 个参数,但在将参数传递给 redux 工具包商店中的异步函数时得到 1 个
Expected 0 arguments, but got 1 while passing arguments to the async func in redux toolkit store
我正在使用 Redux Toolkit + Typescript + React 创建一个项目。
我有在我的 moviesSlice(作为 redux 工具包商店的一部分)中获取电影的功能,它以 movieId 作为参数。当我尝试在我的组件中分派此函数并传递此 id 时,TypeScript 显示错误:预期 0 个参数,但得到 1 个。
我该如何解决?
谢谢
// moviesSlice.tsx
export const fetchMovie = createAsyncThunk(
"people/fetchPerson",
async (movieId) => {
try {
const response = await axios(`${BASE_URL}/films/${movieId}`);
return response.data;
} catch (error) {
console.log(error);
}
}
);
// store.tsx
export const store = configureStore({
reducer: {
people: peopleReducer,
movies: moviesReducer,
planets: planetsReducer,
},
});
// Movie.tsx
useEffect(() => {
dispatch(fetchMovie(movieId));
}, []);
这是打字稿。给你的参数一个类型 - 否则创建的 thunk 动作创建者将不知道该怎么做:
export const fetchMovie = createAsyncThunk(
"people/fetchPerson",
async (movieId: string) => {
try {
const response = await axios(`${BASE_URL}/films/${movieId}`);
return response.data;
} catch (error) {
console.log(error);
}
}
);
我正在使用 Redux Toolkit + Typescript + React 创建一个项目。 我有在我的 moviesSlice(作为 redux 工具包商店的一部分)中获取电影的功能,它以 movieId 作为参数。当我尝试在我的组件中分派此函数并传递此 id 时,TypeScript 显示错误:预期 0 个参数,但得到 1 个。 我该如何解决? 谢谢
// moviesSlice.tsx
export const fetchMovie = createAsyncThunk(
"people/fetchPerson",
async (movieId) => {
try {
const response = await axios(`${BASE_URL}/films/${movieId}`);
return response.data;
} catch (error) {
console.log(error);
}
}
);
// store.tsx
export const store = configureStore({
reducer: {
people: peopleReducer,
movies: moviesReducer,
planets: planetsReducer,
},
});
// Movie.tsx
useEffect(() => {
dispatch(fetchMovie(movieId));
}, []);
这是打字稿。给你的参数一个类型 - 否则创建的 thunk 动作创建者将不知道该怎么做:
export const fetchMovie = createAsyncThunk(
"people/fetchPerson",
async (movieId: string) => {
try {
const response = await axios(`${BASE_URL}/films/${movieId}`);
return response.data;
} catch (error) {
console.log(error);
}
}
);