так что у меня есть это действие:
export const getMovieDettails = (id) => (dispatch) => {
dispatch({type: GET_MOVIE_DETTAIL_LOADING})
fetch(`api/movieId/${id}`)
.then(response => response.json())
.then(movie => dispatch({type: GET_MOVIE_DETTAIL_LOADED, payload: movie}))
.catch(err => dispatch({type: GET_MOVIE_DETTAIL_FAIL, payload: "Error with API"}));
}
в App.js я делаю это:
const mapDispatchToProps = (dispatch) => {
return {
onGetShows: () => dispatch(getHomeShows()),
onGetMovies: () => dispatch(getMoviesShows()),
onGetSeries: () => dispatch(getSeriesShows()),
onGetMovieDettail: (id) => dispatch(getMovieDettails(id))
}
}
и затем передайте функцию на
<Route path="/movie/:id" render={(routeProps) => <MovieDettailsRouter key={routeProps.match.params.id} data={this.props.movieDettail} movieDettail={this.props.onGetMovieDettail} {...routeProps}/>}/>
так на MovieDettailRouter я делаю
componentDidMount() {
console.log(this.props.match.params.id);
this.props.movieDettail(this.props.match.params.id);
}
но не работает, как можно передать функцию с параметрами, для хорошего опыта я вызываю все состояния и действия в App.js, а затем передаю данные по компоненту, для вызова без параметров у меня нет проблем, все нормально , но здесь, где мне нужно получить параметры для проблемы действий, в v1 приложения я не использую действия для этой страницы, я использую только для страницы без действий с параметрами, но в этом обновлении я решил использовать избыточность для каждого вызова на сервере, и мне нужно понять, как можно передать действия с параметрами на компонентах
Редактировать: добавить состояние на MovieDettailRoute