Вам нужно использовать ... состояние, потому что вы хотите изменить состояние текущего состояния
Используя оператор распространения, вы выполняете операцию копирования, чтобы предыдущее состояние было скопировано в новый объект состояния, а выизменить данные в новом созданном объекте состояния.
const a = [1, 2, 3]
const b = [...a, 4, 5, 6] => [1, 2, 3, 4, 5, 6]
Итак, этот код
...state,
feed: !state.feed
Вы создаете новую копию объекта состояния и изменяете свойство feed внутри своего объекта состояния