Каков правильный способ множественных отправок в Thunk в Redux из componentDidMount компонента React? - PullRequest
0 голосов
/ 07 марта 2020

Как видно из названия, я пытаюсь отправить несколько действий из хука одного и того же компонента componentDidMount.

MovieDetails. js

class MovieDetails extends Component {
  componentDidMount() {
    const movieId = this.props.movieId
    this.props.dispatch(fetchMovieDetails(movieId))
    this.props.dispatch(fetchMovieImages(movieId))
    this.props.dispatch(fetchMovieActors(movieId))
  }

Все действия очень похожи. Вот пример одного.

export const fetchMovieActors = movieId => {

  const movieActorsUrl = `https://api.themoviedb.org/3/${movieId}/475557/credits?api_key=${apiKey}`

  return async dispatch => {
    dispatch({ type: "FETCHING_MOVIE_ACTORS_START" })
    try {
      const res = await axios.get(movieActorsUrl)
      console.log(res)
      dispatch({
        type: "FETCHING_MOVIE_ACTORS_SUCCESS",
        data: { movieActors: res.data }
      })
    } catch (err) {
      dispatch({
        type: "FETCHING_MOVIE_ACTORS_FAILURE",
        error: { error: "Something went wrong" }
      })
    }
  }
}

Я просто спрашиваю, это правильный способ сделать это?

...