预期有 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);
    }
  }
);