Я работаю над приложением React и использую Redux для хранения состояния. У меня есть следующий код:
menu.reducer. js:
import { GET_MENU } from './menu.types';
const INITIAL_STATE = []
export default (state = INITIAL_STATE, action) => {
switch (action.type) {
case GET_MENU:
return [ ...action.payload ];
default:
return state;
}
}
menu.actions. js:
import { apiUrl, apiConfig } from '../../util/api';
import { GET_MENU } from './menu.types';
export const getMenu = () => async dispatch => {
const response = await fetch(`${apiUrl}/menu`);
if (response.ok) {
const menuData = await response.json();
dispatch({ type: GET_MENU, payload: menuData })
}
}
В вышеуказанном редукторе , начальное состояние - пустой массив. Отправляя действие GET_MENU
, изменяет исходное состояние так, чтобы вместо него содержался массив элементов меню.
Массив, выбранный в действии GET_MENU
, имеет следующий вид:
Однако я хочу, чтобы мое начальное состояние было следующим:
const INITIAL_STATE = {
menuArray = [],
isSending = false
}
В случае GET_MENU
в коде редуктора я не являюсь убедитесь, что правильный синтаксис используется для назначения свойства menuArray в состоянии массиву, который возвращается из действия GET_MENU
.
Любые идеи приветствуются.