正在使用 Alpine.js……没有状态存储……(有!)
这次我试着用 Alpine.js 来做……只用 Laravel + Alpine.js……\ 不过这里有个问题:没有状态存储…… <https://github.com/alpinejs/alpine/issues/254 和这里说的是同一个问题……没有 state 存储,也无法和父级或其他子级共享 x data……
这次我试着用 Alpine.js 来做……只用 Laravel + Alpine.js……
不过这里有个问题:没有状态存储……
https://github.com/alpinejs/alpine/issues/254
和这里说的是同一个问题……没有 state 存储,也无法和父级或其他子级共享 x-data……
这部分嘛……因为它是在模仿 Vue 的 data,所以也可以理解……不过首先连 bind 也没有。
但这里最大的问题是……像 navbar 这种东西,按钮分散在各处。
也就是说,不能保证打开 navbar 的按钮一定会在 div 组件里面!
类似地……modal 也一样……modal 还得遵循 z-index 和标记顺序之类的,所以最终还是得把 modal div 放到外层……
这样一来,到底要怎么从外部触发 modal 的 open 状态值呢……
我一开始为这事吃了不少苦头……看起来好像也有人用 init hook 来控制……但感觉太复杂了……
看那篇帖子,好像正在开发 state 相关的功能……如果这个功能开发出来的话,希望能通过存储来控制 modal 或 navbar 这类常用的组件……
现在我打算把 modal 数据放到最顶层的 div x-data 里,再通过 dispatch 直接发送事件来触发它……(真没辙……)
总之,希望能尽快找到 issue 245 的解决方案。
这也是我第一次使用 Alpine.js……嗯……确实很方便、很好用……不过该说还是有点不足吗……总之……基本可以认为单独使用 Alpine.js 几乎是不可能的……上面提到的存储问题也是如此……
用它来处理一些简单的部分应该会非常方便。
如果它只支持存储功能的话,说实话,我觉得光用 Laravel + Alpine.js 就能轻松做出很多东西并发布出来。(设计方面正在使用 Tailwind CSS……)
5月23日补充(原来有状态值!!!太好了)
https://github.com/ryangjchandler/spruce