alpinejsを使っているのですが…状態保存機能がない…(ある!)
今回、alpinejsを使って試しているのですが…Laravel + alpinejs だけで…。\ でも、ここで問題があって、状態を保存する仕組みがない… <https://github.com/alpinejs/alpine/issues/254 この内容と同じなのですが…stateストアがなく、親やほかの子要素と
今回、alpinejsを使って試しているのですが…Laravel + alpinejs だけで…。
でも、ここで問題があって、状態を保存する仕組みがない…
https://github.com/alpinejs/alpine/issues/254
この内容と同じなのですが…stateストアがなく、親やほかの子要素とx-dataを共有できません…
この点は…Vueのdataを踏襲しているということなので、理解できるのですが…とりあえずbindもありません。
でも、ここで一番大きな問題は…navbarの場合、ボタンがあちこちにあることです。
つまり、divコンポーネントの中にnavbarを開くボタンがあるとは限らない、ということです!
これと似たようなことが…modalにも当てはまります…modalの場合、z-indexやマークアップの順序も守らないといけないので、結局、外側にmodal divを出さなければならないのですが…
そうなると、いったいどうやって外部からモーダルのopen状態を実行すればいいのでしょうか…
このせいで最初はかなり苦労しました…見ると、initのhookで制御している人もいるようですが……複雑すぎるように見えて…
該当の投稿を見ると、stateの部分は開発中とのことです…これが実装されたら、ストアからmodalやnavbarのような共通して使われるものを制御できるようになってほしいです…
今は最上位のdivのx-dataにmodalのデータを入れて、dispatchでイベントを直接追加して実行しようとしています…(お手上げ…)
とりあえず早く、245番のissueに対する解決策が出てきてほしいです。
alpine.jsを使うのは初めてなのですが…うーん…すごく便利でいいですね…でも、まだ少し足りないというか…とりあえず…alpine.jsを単独で使うのはほぼ不可能だと思ってよさそうです…上で話したストアの問題もそうですし…
簡単な部分を作業するには、とても手軽でよさそうです。
もしストアの部分だけでもサポートされれば、正直、Laravel + alpine.js だけでも、いろいろなものを簡単に作って公開できそうです。(デザインにはtailwindcssを使用中…)
5月23日追記(状態を保存する機能があった!!!よかった)
https://github.com/ryangjchandler/spruce