#javascript #reactjs #typescript
Вопрос:
Не могли бы вы помочь мне со следующим:
Мое начальное состояние таково:
const initialState: IMovieState = {
movie: {
filmId: 0,
posterUrl: '',
....other props,
};
Редуктор
export const movieReducer = (state = initialState, action: MovieActions): IMovieState => {
switch (action.type) {
case MovieActionTypes.FETCH_MOVIE: {
return { ...state, movie: action.payload };
}
case MovieActionTypes.RESET_MOVIE_STATE: {
return initialState;
}
default:
return state;
}
};
Мне нужно сбросить все реквизиты в исходное состояние, кроме свойства PosterUrl. Как я могу это сделать? Не уверен, имеет ли это значение для решения моей проблемы, но я использую TS
Ответ №1:
Пожалуйста, используйте нижеприведенную строку
case MovieActionTypes.RESET_MOVIE_STATE: {
return {
...initialState,
movie: {
...initialState.movie,
posterUrl: state.movie.posterUrl
}
};
}