Как правильно структурировать логику в redux?

#javascript #reactjs #redux #redux-thunk #redux-toolkit

#язык JavaScript #реагирует на #возвращение #передел-тук #redux-инструментарий

Вопрос:

Существует действие для обновления элемента:

 reducers: {  ITEM_UPDATED: (state) =gt; {  ...someCode...  } } 

Тогда возникает необходимость обновить не один элемент, а несколько, какое решение здесь было бы более правильным:

  1. Создайте thunk для обновления нескольких элементов и оттуда вызывайте обновление каждого по одному:
 const updateItems = () =gt; (dispatch) =gt; {  const items = axios.get('...');  items.forEach(( item ) =gt; dispatch(ITEM_UPDATED, item)) } 
  1. Переместите обработчик обновления элемента в отдельную функцию и повторно используйте его.
 const handleItemUpdated = (state) =gt; {  ... }  reducers: {  ITEM_UPDATED: (state, item) =gt; handleItemUpdated(state, item);  ITEMS_UPDATED: (state, items) =gt; {  items.forEach(( item) =gt; handleItemUpdate(state, item));  } } 

Комментарии:

1. Почему бы не использовать элементы в качестве полезной нагрузки, передать их один раз и выполнить пакетное обновление? dispatch(ITEM_UPDATED, items)