Какая правильная структура react-redux приложения с подключением к бд mongo?

Пришёл к выводу что в голове образовалась каша по поводу того как стоит организовывать структуру приложения. просто в каждом примере своя структура и тяжело понять какая должна быть на самом деле.

К примеру как я сейчас понимаю должно быть такое что-то.
server
-db
-model

client
- component
- container
-store
-reducer

Но в тоже время есть подключения, т.е должна быть папка api , куда её помещать и т.д. Хотелось бы просто разобраться как же в итоге должна строиться структура приложения
  • Вопрос задан
  • 2501 просмотр
Пригласить эксперта
Ответы на вопрос 2
Во-первых давайте отделим бэкенд (серверную часть): там у вас должно быть rest-api, которое возвращает JSON.

Что касается структуры клиента: в целом - да, компоненты, контейнеры, редьюсеры (store зачем отдельно выносить?). Всю работу с api вы делаете в actions. Получается такая структура:
- components
- containers
- reducers
- actions

Я делю приложение на модули (если оно большое). И, получается, что модули с вышеприведенной структурой находятся в отдельных папках, а само приложение это набор страниц (и их контейнеров).
Ответ написан
@Pogran Автор вопроса
А не могли бы вы про серверную часть чуть больше написать, а то я всё равно не до когца понимаю как должно быть. К примеру у меня в точке входа сервера вот что
app.get('/entity/add', (req, res) => {
    db.createEntity(req.body).then(data => res.send(data));
});
/**  Create HTTP server. **/
const server = http.createServer(app);
server.listen(port, () =>
    console.log(`Server started on port ${port}`)
);


Вот тут есть запрос app.get который я отправляю на /entity/add . а по правильному же надо писать api/entity/add ?
и потом если у меня будет много запросов(app.get, app.post) их же не правильно всех хранить в файле точки входа? И есть ли у вас возможность кинуть какой из своих проектов с правильной структуром? можно просто серверную часть, или кусок какой, чтобы как-то уловить суть как оно должно быть
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы