История изменений
Исправление Nervous, (текущая версия) :
К сожалению, отсутствие эффективных механизмов работы с неизменяемыми данными — это общая проблема JS, и решить ее можно только транспиляцией
Неизменяемые данные это хорошо, спору нет. Но, во-первых, изменять состояние приложения тебе все равно придется, а во-вторых, можно обойтись и без них, если есть Mobx/Redux/Vuex/…, в котором
- есть единственный источник истины (db/store/you name it)
- единственно возможный путь изменения данных в нем (его API).
И все. Никто больше не выдергивает незаметно у тебя коврик из-под ног, все ходы записаны.
Да, это ужасное глобальное состояние, которое мы с детства привыкли бояться и ненавидеть. Но и оно уже не то, что было раньше %)
Исправление Nervous, :
К сожалению, отсутствие эффективных механизмов работы с неизменяемыми данными — это общая проблема JS, и решить ее можно только транспиляцией
Неизменяемые данные это хорошо, спору нет. Но, во-первых, изменять состояние приложения тебе все равно придется, а во-вторых, можно обойтись и без них, если есть Mobx/Redux/Vuex/…, в котором
- есть единственный источник истины (db/store/you name it)
- единственно возможный путь изменения данных в нем (его API).
И все. Никто больше не выдергивает незаметно у тебя коврик из-под ног, все ходы записаны.
Исходная версия Nervous, :
К сожалению, отсутствие эффективных механизмов работы с неизменяемыми данными — это общая проблема JS, и решить ее можно только транспиляцией
Неизменяемые данные это хорошо, спору нет. Но можно обойтись и без них, если есть Mobx/Redux/Vuex/…, в котором есть единственный источник истины (db/store/you name it) и единственно возможный путь изменения данных в нем (его API).
И все. Никто больше не выдергивает незаметно у тебя коврик из-под ног, все ходы записаны.