jotai-signalのその後
以前の記事
で、
create-react-signalsの中身については、ブログ記事にしなければと思いつつ、まだ手がついていません。そのうち。
と書きましたが、その後書いたものがこちら。
少し機能も追加して、jotai-signal用に、signalを再帰的に作らないようなケースにも対応しました。なぜなら、jotai-signalで使う場合のatomは既に十分小さくできるはずだからです。
これにより、新しくatomSignal
という仕組みを作ることができました。
しかし、これは諸刃の剣というか、atomの良さを隠してしまっています。Jotaiのatomは単なる定義であり、その値はstoreに格納されるのですが、atomSignal
はatomとstoreが一体化したものを作ってしまいます。ほぼコンセプト崩壊。おそらく、observableとcreate-react-signalsを組み合わせても同じことができるでしょう。
atomSignal
はお試しで作ったものですが、Twitterでポジティブな意見ももらったので、機会があれば、そっち方向を模索しても良いかもしれません。jotai-signalとしては、atomSignal
はおすすめせず、今まで通りの$
の使い方が自然な感じがします。と言っても、Jotaiは基本、useAtom
を使うことでほぼ困らないと思いますので、jotai-signalの出番は少ないでしょう。(diffingの省略に魅力が残りますが、となるとuseAtom
とjotai-uncontrolledの組み合わせの方が筋が良かったり?)
create-react-signalsは仕組みとしては面白いのですが、Reactがuse(observable)
とかを実装すれば、ほぼいらなく(diffingの省略は残るものの)なりますね。今後どうなるか。
ただの備忘録になってしまいました。ひっそり公開しておきます。
Discussion