目的
flux使わずに、 楽に状態管理がしたい!
ES2015のProxyを使ったツールで、そろそろ良さそうな出ているのでは・・!
と思って4日ほど調べてみました。
調査結果
https://github.com/franciscop/state
property単位の監視が簡単 書いてて楽しい
だけど、observeが解除できなくて、componentのunmount時に困った
https://github.com/sindresorhus/on-change
ソースコードが非常に短いので、覚えることが最も少なく、楽に書ける
だけど、callback設定が初回1回しかできなくて、component間での共有に困った
https://github.com/dobjs/dob
これも直感的に書けて楽、observeの解除もあるし。
observable object以下のarray/objectが自動的にproxyになるので、その扱いに戸惑ったけど、そういうものらしい。
Actionという定義を使うと、複数propertyの変更があっても、triggerは1回になる。
後述するobserver-utilを改良したもの、っぽい。
https://github.com/mweststrate/immer
説明長いしfluxっぽくて面倒そう
https://github.com/nx-js/observer-util
基本的にはdobと同じ、構文が微妙に違ったり、機能差分がある。
調査を終えて
自分はriotユーザー(hyperHTMLへの移行は検討中)なため、覚えるコストが低く、乗り換えやすいものを探していました。
ただ実際に使ってみると、困る点が出てくるもので、正直はまってしまった感があります。
reactユーザーだと、それ専用のmoduleが用意されていたりするので、もう少し苦労しなかったかも。
また何年かすると、より良いものが出ているんだろうなと思います。
その時に機会があれば、また書きます。
そんな感じでしたー