1

背景: re-frame todomvc の例は、ほとんどの実装と同様に、すべての todo を 1 つの大きな blob としてローカル ストレージに保存します。つまり、todo を変更するイベントは、ハードコードされた [:todos] パスのパス インターセプターを持つことができ、次に ->localStorage インターセプターは todos キーに「すべて」をやみくもに書き込み、「すべて」が単なる todos であると確信します。

問題: シナリオがほぼ同じであるが、効率のために各 Todo を別のキーの下に保存したい場合、(1) たとえば UUID を割り当ててから (2) キーを「TODO-」+ uuid として作成するとどうなりますか? イベント ベクトルには、変更される todo の uuid が含まれます。

イベントを見てuuidを特定し、「db」をそのtodoだけに絞り込み、コンテキストからキー情報を取得する方法を理解するライターインターセプターが必要な「パス」のようなインターセプターが必要だと思います。そのような生き物は存在しますか?

それとも、use reg-event-ctx とカスタム ハンドルのすべてを記述するだけですか?

それとも、もっと慣用的な解決策がありませんか?

4

1 に答える 1