等待 Vue3 的日子里……
嚯哦……我在等 Vue3……准确地说,是 Nuxt 3……\ 我觉得它会带来比想象中更多的变化,所以把之前做好的 Nuxt 项目先放在一边,改用新的东西开发了。 不过……就算 Nuxt 3 出来了,要让其他插件也兼容,应该还是需要一些时间吧……?嗯嗯…… 所以我正在尝试的新组合是: Tailwindcss + Alpi
嚯哦……我在等 Vue3……准确地说,是 Nuxt 3……
我觉得它会带来比想象中更多的变化,所以把之前做好的 Nuxt 项目先放在一边,改用新的东西开发了。
不过……就算 Nuxt 3 出来了,要让其他插件也兼容,应该还是需要一些时间吧……?嗯嗯……
所以我正在尝试的新组合是:
Tailwindcss + Alpine.js (store) + Livewire。
Laravel + Nuxt 3 + Alpine.js 这种组合的话,Laravel 承担后端的角色,所有通信部分都必须构建成 API 来使用。
因此,使用 Vue3 时,SEO 等方面难免会出现问题。
所以,为了解决 SEO 问题,同时更好地使用 Vue 和 Laravel……我选择了 Nuxt……
不过这种方式有个缺点:既要开发 Laravel API,又要在 Nuxt 中另外开发前端。
但据说,使用上面提到的 Livewire 时,因为用的是 Laravel Blade,只要整体替换模板区域,就能在 SEO 方面也正常运行。
Nuxt 会启动 Nuxt Node 服务器,在通过该 Nuxt 服务器首次进入页面时获取相应数据,并直接渲染到 DOM 中,以此解决 SEO 问题;
而 Livewire 则是直接用 Blade 渲染相应页面,发生变化的部分通过 ajax(axios) 通信来替换整个 HTML 区域……就是这样一种方式。
好像很难说哪种方式才是正确的……
毕竟不管选择哪一种,只要用熟了,开发耗时总会不断缩短。
从性能方面来说,重新应用整个 HTML 的 Livewire 会不会稍微慢一些呢……?不过我也不太清楚……毕竟 PHP8 也快来了……
但是……Vue 在 3.0 版本中速度也会比想象中更快……所以还真是有点难以判断……
不过无论如何,作为一个毫无理由地在等 Nuxt 3(Vue 3)的人,我开始想用 Livewire 做个项目试试了。
所以就先……一边等 Vue3,一边用 livewire + alpine.js 来开发吧。
https://dev.to/vittorioe/laravel-livewire-292l
上面的链接是我搜索时找到的……Livewire 到底会不会成为游戏规则改变者……以后再说……