Я новичок в Redux - и я действительно пытаюсь получить большую картину использования функционального программирования, чтобы сделать однонаправленные данные более элегантными.
Как я вижу это - каждый редуктор принимает старое состояние, создавая новое состояние без изменения старого состояния, а затем передавая новое состояние следующему редуктору, чтобы сделать то же самое.
Я понимаю, что не вызывающие побочные эффекты помогают нам получить преимущества однонаправленного потока данных.
Я просто не понимаю, что так важно, чтобы не мутировать старое состояние.
Единственное, о чем я могу думать, это, может быть, "Путешествие во времени", о котором я читал, потому что, если вы держались за каждое состояние, вы могли выполнять и "отменить".
Вопрос:
Существуют ли другие причины, по которым мы не хотим мутировать старое состояние на каждом шагу?