【问题标题】:Practical use of VueJS with LaravelVueJS 与 Laravel 的实际使用
【发布时间】:2018-01-30 21:06:58
【问题描述】:

我正在启动一个新的大型应用程序,在听到很多关于 VueJS + Laravel 组合的信息后,我想到了使用它。我关注了Laracasts' Learn Vue 2: Step By Step series 和一些tutorials 来了解它是如何工作的。

但请记住几个问题:

  1. 为什么我们甚至需要在 Laravel 中使用 Vue。我知道我们可以在 Vue 中创建像 <user-profile></user-profile> 这样的组件,然后在 Laravel Blade 中使用它。但它看起来像过于复杂的事情?首先我们将数据从控制器传递到刀片,然后进一步将其传递给 vue。为什么我们需要这样做?

  2. Laravel 和 Vue 都有自己的路由系统。用哪一个?

  3. 如何使用 Laravel + Vue 构建应用程序

PS。我正在制作一个主要用于移动设备的应用程序。

【问题讨论】:

  • 明白。但我仍然不明白你为什么要使用 Vue。在大多数示例中,他们创建了一个 vue-compinent 并在 Laravel 刀片中使用它。但是你可以简单地为此创建 Laravel 的组件:laravel.com/docs/5.4/blade#components-and-slots

标签: laravel laravel-5 vue.js vue-component vue-router


【解决方案1】:

从评论中移出

为什么我们甚至需要在 Laravel 中使用 Vue。

尽管您可能已经知道,Vue 只是众多 javascript 前端框架(库?)中的一种,您可以以任何方式使用从服务器发送的数据。 Vue 只是 Laravel 的姊妹框架。关于为什么一起提到它们,您可能唯一可以说的是,您可以使用 json 对象在它们之间轻松“交谈”(接口)。 Javascript 旨在使您的页面具有交互性,具有行为。需要时使用它。

Laravel 和 Vue 都有自己的路由系统。使用哪一个?

无论你想要什么,你想要一个由 Vue 在 3 个不同页面中呈现的“单页”(刀片),比如某种 Wizard form。这真的取决于你想把负载放在哪里。我认为您可以考虑客户端页面呈现更好的用例,但大多数时候服务器端将是一个不错的选择。

单页应用程序在初始加载后更快速(更快),但服务器端呈现的应用程序通常更适合 SEO。但是,也有一些方法可以让 SPA 在服务器上呈现以改善 SEO。我们可以继续讨论一段时间。

如何使用 Laravel + Vue 构建应用程序

Laravel 在resources/assets/js/app.js 下已经有一个示例 vue 文件。所以可以假设你可以把所有东西都放在那里。

【讨论】:

  • 感谢 Thomas 的精彩解释。我正在构建的应用程序将主要在移动设备上使用。你认为不合并 Vue + Laravel 是个好主意吗?在 Vue 上构建一切并仅将 Laravel 用于 API?
  • 这真的取决于你,但也许你可以在头脑中考虑这一点:1) 使用 Vue 交互是否会加快开发速度? 2) 是否有某些任务只能用 Vue 完成? 3) 你想通过 xhr (ajax) 异步加载某些元素吗? 4) 你需要网站在没有启用 javascript 的情况下工作吗? 5)你想写两次某些验证,因为你不能依赖客户端验证吗? 6) ... 并优先考虑这些结论。
  • 当然这是个好主意!想想你使用的网络应用程序。现代的单页页面在反应性、感觉、复杂性以及至少使用 vue 的易用性方面都将服务器渲染的页面彻底击败了。这就是未来。
  • @user1585345 使用 Vue 构建美观且快速的 Web 应用程序是对的,但考虑一下它是否也是适合手头工作的工具总是好的。
  • 很好的解释,但在那个话题上很困惑。谢谢托马斯
猜你喜欢
  • 2017-09-04
  • 2017-01-25
  • 2021-01-05
  • 2013-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-10
  • 1970-01-01
相关资源
最近更新 更多