Хотите знать о хорошей структуре состояния Redux в приложении ReactJS для отслеживания тренировок? - PullRequest
0 голосов
/ 06 февраля 2020

Я сейчас начинаю создавать приложение TypeScript React Redux, предназначенное для отслеживания тренировок. Пользователь должен иметь возможность выбрать day (из меню) и увидеть режим тренировки на этот день. Workout рутина состоит из нескольких упражнений. Exercise состоит из name (пользователь может ввести свое имя), number of repetitions и weight. Все будет сохранено и синхронизировано с localStorage.

Меня интересует хорошая структура состояния Redux в этом приложении. Я думаю, что это должно выглядеть примерно так:

Состояние:

day: number // currently chosen day

Exercise: { // collection of exercises 
    id: number;
    name: string;
}

ExerciseResult: {
    exerciseId: number;
    repCount: number;
    repWeight: number;
}

WorkoutRoutine: {
    id: number;
    day: number;
    results: ExerciseResult[]; // array of ExerciseResult
}

Моя идея заключается в том, что пользователь переключает day (изменения дня состояния переменных), компоненты перезагружаются и получают новые WorkoutRoutine с правильной переменной дня, а затем отображаются правильные данные.

Это хороший дизайн? Есть идеи или критика? И вообще, есть ли какие-нибудь ресурсы, которые бы помогли мне понять, как спроектировать состояние, или это просто что-то, что приходит с опытом?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...