Задать вопрос
@Dolerum

Стоит ли использовать TypeScript в Redux?

Здравствуйте.
Есть небольшое приложение. Делаю(то есть можно сказать, уже сделал) для себя.
Недавно ввел в него тайпскрипт и вот хотелось бы сразу узнать, имеет ли смысл использовать в редьюсерах тайпскрипт(не получится ли, что я это делаю для некоего тупого упражнения, которое нигде не котируется?) и если да, то как типизировать. Есть гайды и бест практисы?
Спасибо за ответы.
  • Вопрос задан
  • 148 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
@camelCaseVlad
Использую Flow в проекте.

Фот как выглядит пример Апп редусера.

//@flow
import type {
  ActionWithPayloadType,
  AppStateType
} from '@project/types';
import { OPEN_MODAL, CLOSE_MODAL, SET_USER_LOGIN } from '../constants';

const initialState: AppStateType = {
  isModalOpen: false,
  isUserLoggedIn: false
};

//eslint-disable-next-line complexity
const appReducer = (
  state: AppStateType = initialState,
  action: ActionWithPayloadType = { type: '', payload: '' }
) : AppStateType => {

  if (!action) { return state; }

  if (action.type === OPEN_MODAL) {
    return { ...state, isModalOpen: true };
  }

  if (action.type === CLOSE_MODAL) {
    return { ...state, isModalOpen: false };
  }

  if (action.type === SET_USER_LOGIN) {
    return { ...state, isUserLoggedIn: action.payload };
  }

  return state;
};

export default appReducer;


@project/types

export type ActionWithPayloadType = {
  type: string,
  payload: *
};
export type AppStateType = {
  isModalOpen: boolean,
  isUserLoggedIn: boolean
}
Ответ написан
Комментировать
Robur
@Robur
Знаю больше чем это необходимо
Если переводите приложение на тайпскрипт - то имеет смысл переводить его полностью. Не важно редьюсеры там или еще что.
Вот чего точно не стоит - это держать вперемешку js и ts код.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы