Фронтенд: Бизнес-логика
Конечный результат
Приложение шифратор, в котором можно шифровать и дешифровывать информацию, в котором валидация полей для отправки результата через кнопки написано в самих компонентах а отправка запроса на сервер выполняется через Redux.
План решения
-
Поменять порт на 666 чтобы не возникало конфликтов с бэкенд приложением.
-
Установить axios и Redux с типами прописав команды "npm install --save axios react-redux redux @reduxjs/toolkit" и "npm install -D @types/react-redux @types/redux".
-
Установить модуль Prettier локально в проект и настроить Eslint и Prettier.
-
Создать "axiosClient.ts" чтобы не повторяться в коде при запросах.
-
Настроить store, для того чтобы логику можно было передавать через него в requestSlice.
-
Добавить лоадер.
-
Создать файл requestSlice и написать в нем логику передачи данных в Api и сделать так чтобы снизу главной страницы появлялся лоадер.
-
Обернуть главный компонент (app/page.tsx), компонентом Provider.
-
Прописать в главной компоненте валидацию полей, чтобы не отправлять что попало.
-
Проверить работу приложения и взаимодействие фронтенда с бэкендом
Мотивация
Написание бизнес логику в приложении для шифрования и дешифрования по методу шифрования Вегнера. Повторение компонентов React, Redux и практика работы в команде с помощью веток в gitlab.
Критерии приёмки
При отправке сообщений снизу виден ползунок. Пустые поля "Encoded message" и "Decoded message" не отправляются, выдают ошибки о том что надо заполнить поле, если не заполнено поле пароля, выдает ошибку о том что надо его заполнить. Сообщение которое было зашифровано паролем, можно с тем же паролем дешифровать, и результат будет так же как при первой отправке.