【问题标题】:CRUD in AngularJSAngularJS 中的 CRUD
【发布时间】:2014-08-01 08:12:38
【问题描述】:

我正在构建一个管理面板,主要涉及 AngularJS 中的 CRUD 操作。我在网上看到了很多如何做到这一点的例子。我看到的每个示例都是处理单一类型(例如 Person、Employee 等)的单页应用程序。

我的问题如下:如果我正在构建的管理应用程序将涉及大量 CRUDS(数据库中使用的每种类型一个),我应该仍然为整个管理面板网站使用一个单页应用程序还是应该我让每个 CRUD 成为一个单独的单页应用程序?

这方面的最佳做法是什么?

【问题讨论】:

  • blog.angularjs.org 上有一篇博客文章,其中包含一些关于最佳实践的指南(截至 2 月 13 日)。就我个人而言,我发现了一个单页应用程序,每个“页面”的视图是最好的方法,但还没有完成可能被描述为大型应用程序的事情。
  • @LeeWillis 谢谢。有趣的是,即使在该文档中,文件夹结构模式也适用于每个应用程序,它们都是简单的应用程序(具有两个或三个视图)。问题是,这些都是将多个应用程序组合成一个网站的例子,还是应用程序本身会扩展更多视图?

标签: angularjs crud


【解决方案1】:

我们选择将单个应用程序用于使用名为 ng-admin 的 angular.js 构建的多模型管理 GUI(开源,请参阅 https://github.com/marmelab/ng-admin 的代码)。

效果很好,处理模型关系(一对多、多对一、多对多)更容易。对多个应用程序这样做意味着启动多个应用程序 - 可能对 webperf 不利。

【讨论】:

    【解决方案2】:

    Angular 非常适合 CRUD 操作。有许多使用 Angular 的具有大量 CRUD 操作的大型应用程序。转到built with angular 并查看应用程序。您也可以找到源代码。

    通常,REST 服务用于制作 CRUD 应用。

    在我看来,让每个 CRUD 成为一个单独的应用程序不会带来 SPA 的最佳性能,因为像页眉和页脚这样的一些内容没有太大变化,因此多次渲染它们是不可行的。

    【讨论】:

    • 那么您是说这些大型应用程序中的大多数都构建为具有大量路由和视图的 SPA?
    • 另外,这是否意味着,在我的示例中,用于所有 CRUD 操作和所有其他逻辑的 JavaScript 文件将合并到一个大文件中,并最初使用单个 index.html 页面下载?
    • 这是 Angular 应用程序构建过程的一部分。将其连接到一个文件中是一种常见的做法。你也可以使用requireJs。我建议您搜索有关在 Angular js 应用程序中包含 javascript 文件的相关问题stackoverflow.com/questions/20633995/…stackoverflow.com/questions/15939913/…
    猜你喜欢
    • 2017-01-10
    • 2015-06-01
    • 2014-10-03
    • 1970-01-01
    • 2018-02-22
    • 2014-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多