Потому что обычно вы хотите хранить другие ключи внутри вашего состояния ...
Если в вашем штате:
{
items:['a', 'b', 'c'],
loading: false,
error: null
}
и вы возвращаете только для примера:
case FETCH_PRODUCTS_BEGIN:
return {
// ...state, --> Without this line
loading: true,
error: null
};
Ваше новое состояние будет
{
loading: true,
error: null
}
И ваш items
будет потерян.
Затем, возвращая:
case FETCH_PRODUCTS_BEGIN:
return {
...state,
loading: true,
error: null
};
Вы говорите
Возвращает копию состояния, но переопределяет клавиши loading
и error
"