【问题标题】:Laravel 5.5 and angular 4 integrationLaravel 5.5 和 Angular 4 集成
【发布时间】:2018-03-12 12:34:34
【问题描述】:

我正在开发一个已有 6 年历史的 ERP 系统,它是用原始 PHP 开发的,维护程序编码结构,没有 OOP 或任何框架。

最后,我们的管理层决定使用升级的技术重新编写应用程序。我们将在 Laravel 框架中编写应用程序。数据库将是 Oracle 和 Mysql。在前端,我们将使用 Angular 4。

我是否应该使用 Angular 4 进行前端请求处理和数据绑定?或者我应该使用 Javascript/Jquery。最近几天我在网上寻求一些建议。我也找到了一些。我的问题是,我应该如何整合 Laravel 和 Angular?我应该采用基于 API 的方法来为 Laravel 和 Angular 维护两个不同的项目,还是在文件夹中的 Laravel 中维护两个不同的项目?如果我采用基于 API 的方法,我的 ajax 请求会增加吗?应用程序的数据库将太大。 基于 API 的方法会使数据加载速度变慢吗?

应用程序中的所有请求都是基于ajax的,不会有页面刷新的方法,但是url会根据请求改变。

请建议我可能的正确解决方案,以帮助我做出正确的决定。

【问题讨论】:

    标签: php jquery angular typescript laravel-5.5


    【解决方案1】:

    Angular 2/4+ 旨在构建 SPA(单页应用程序)。如果您深入研究 Angular,那么您会很清楚 Angular 2+ 架构中遵循的所有结构和约定都针对 SPA 进行了优化。

    所以,如果你想在 Laravel 5+ 中使用 Angular,那么我认为最好的方法是使用 Angular 来构建一个独立的前端应用程序并使用 Laravel 5+ 作为后端。这意味着 laravel 将充当 API 服务器和应用程序的后端。

    使用 laravel 作为 API 服务器并不一定意味着您的数据库会更大。如何设计应用程序实际上取决于您。

    但是,还有另一个很好的解决方案。 您可以使用VueJs。 Laravel 5+ 中内置了对 VueJs 的支持。 使用 VueJs 的好处是你可以像使用 Jquery 一样使用它。这意味着您不必像 Angular 那样为 VueJs 创建单独的独立应用程序。 但是,您可以逐页使用它。它是松耦合的。 您将从中获得 Angular 的大部分好处。

    你也可以使用 React。

    【讨论】:

    • 是否应该在 SPA 中设计 ERP?是的,我已经在考虑使用 Vue/React。
    • 当然可以在SPA中设计ERP。这是非常可行和现实的。你知道,一切都取决于你如何设计它。
    【解决方案2】:

    您可以使用 Angular 4 来重写您的应用程序。作为单页应用程序的前端和公开REST API的后端将帮助您构建性能良好的应用程序。

    我更喜欢将 AngularREST API 分开,因为它们应该彼此独立。 REST API应该始终是通用的,以便其他应用程序也可以使用它们。

    是的,会有很多对服务器的 API 调用。您可以根据您的请求数量扩展您的 REST API。最好构建微服务,以确保大多数服务在大量重负载的情况下不会受到影响(至少部分应用程序将运行)。它也将帮助您在以后的维护中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-15
      • 1970-01-01
      • 2018-07-11
      • 1970-01-01
      • 2018-03-19
      • 1970-01-01
      • 2018-05-12
      相关资源
      最近更新 更多