ドキュメントによると、反応アプリの状態はシリアライズ可能なものでなければなりません。じゃあ授業は?
ToDo アプリがあるとします。各Todo
アイテムには、これまでのところ などのプロパティがありname
ますdate
。今、シリアル化できないオブジェクトにメソッドが必要です。つまり、 todoTodo.rename()
の名前を変更し、他の多くのことを行います。
私が理解している限り、関数をどこかで宣言し、その関数を小道具を介してコンポーネントにrename(Todo)
渡すか、または渡すことができます。this.props.rename(Todo)
どこかで宣言する際に 2 つの問題があり.rename()
ます。1) どこで? 減速機で?would be instance
アプリのレデューサーのどこかにすべてのメソッドを見つけるのは難しいでしょう。2) この関数を渡します。本当に?すべての上位レベルのコンポーネントから手動で渡す必要があります。また、メソッドが増えるたびに、大量のボイラープレートを追加して、それを渡すだけですか? または、1 つのタイプのオブジェクトに対して 1 つの名前変更メソッドしか持たないことを常に望んでいます。Todo.rename()
Task.rename()
ではないEvent.rename()
それはばかげているように思えます。オブジェクトは、それに対して何ができるか、どのようにできるかを知っている必要があります。そうではありませんか?
ここで何が欠けていますか?