jeerjmin
@jeerjmin

Как передать запрос со стороны front'a на изменение БД?

На фронте у меня React/Redux приложение по добавлению cards и к каждой карточке неограниченное количество entries.
В Redux store есть массив card и entries, и обычные actions: addCard, deleteCard, editCard, addEntry, deleteEntry, editEntry.

const rootReducer = combineReducers({
  cards: CardReducer,
  entries: EntryReducer,
});

На бэке express/mongoose

const todoSchema = new mongoose.Schema({
    cards: {type: Array, required: true},
    entries: {type: Array, required: true},
    createdAt: {type: Date, default: Date.now}
});


Сейчас у меня на загрузку в БД используется один action creator, который передает массив с массивами cards и entries в массив БД и выполняется при рендере главного компонента.
axios.post(API_URL, {cards, entries})

А в componentDidMount я вызываю action creator, который обращается к БД и достает последний массив в массиве БД.

Здесь и вопрос. Хочу сделать нормально...
Предполагаю, что нужно создать function requests к бэку для каждого случая. Но как ? Типо такого:
addCardBD - добавить карточку и на бэке будет добавляться в массив cards один объект с пустым полем "name".
editCardBD - на бэке будет меняться меняться поле 'name'.
deleteCardBD
итд

Ссылка на код: https://github.com/Jeerjmin/dnd-mern

Если что-то не понятно или еще кода добавить - поправлю, добавлю.
Спасибо
  • Вопрос задан
  • 405 просмотров
Решения вопроса 1
jeerjmin
@jeerjmin Автор вопроса
Никто не отвечает, отвечу сам.
Пришел к express.Router.

Нашел такое решение на гитхе, ковыряюсь вот
https://github.com/cefjoeii/mern-crud
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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