В соответствии с docs состояние реактивного приложения должно быть чем-то сериализуемым. Как насчет классов?
Скажем, у меня есть приложение ToDo.
Каждый из элементов Todo
имеет такие свойства, как name
, date
и т.д. До сих пор так хорошо.
Теперь я хочу иметь методы для объектов, которые не являются сериализуемыми. То есть Todo.rename()
, который переименует todo и сделает много других вещей.
Насколько я понимаю, функция может быть объявлена где-то и rename(Todo)
или, возможно, передать эту функцию через реквизит this.props.rename(Todo)
в компонент.
У меня есть 2 проблемы с объявлением .rename()
где-то:
1) Где? В редукторе? Было бы трудно найти все методы would be instance
где-нибудь в редукторах вокруг приложения.
2) Передача этой функции. В самом деле? должен ли я вручную передать его со всех компонентов более высокого уровня через
И каждый раз, когда у меня есть больше методов, добавьте тонну шаблона, чтобы просто сдать его?
Или всегда делайте и надейтесь, что у меня есть только один метод переименования для одного типа объектов. Не Todo.rename()
Task.rename()
и Event.rename()
Это кажется мне глупым. Объект должен знать, что с ним можно сделать и каким образом. Не правда ли?
Что мне здесь не хватает?