javascript - AngularJS:一次加载所有数据作为 JSON 与使用数据库并仅加载部分数据。什么是更好的?

标签 javascript json angularjs mongodb

我必须在网页上显示存储在 ERP 中的产品。 ERP 可以生成包含所有产品的 XML 或 JSON 文件。网页需要具备分页、排序、属性过滤等功能。目前我认为最简单的方法是将整个文件加载到 AngularJS 中,然后遍历所有项目并使用它。产品数量限制为 ~500。我认为这是最简单的原因是因为客户端每天更改信息,这样我就不必为数据库编写导入/同步过程。

但我有点担心性能。排序、过滤、分页等都是使用数据库(可能是 MongoDB,因为数据结构非常简单)会非常快的事情。

我会遇到严重的性能问题吗?这可行吗?或者我应该在 ERP 和前端之间放置一个数据库来完成繁重的工作吗?

最佳答案

唯一可以确定的方法是亲自测试,这就是我会做的。答案通常是,“这取决于……”。你说它大约有 500 种产品,如果每个产品只有一个产品名称,那么数据库就太过分了。 Angular 对这个数量非常满意。但是,如果每个产品都有大量属性和嵌套数据,则文件本身可能会非常大,甚至无法在每次页面加载时加载。所以,这取决于..

我会这样:

  • 将 ERP 中的文件导出为 JSON
  • 创建样板 Angular 应用
  • 将JSON文件作为资源文件
  • 创建一个简单的转发器并将这些对象放入 DOM 中

现在您可以轻松地尝试过滤、排序、分页等。测试浏览器性能和加载时间是否符合您的要求。

关于javascript - AngularJS:一次加载所有数据作为 JSON 与使用数据库并仅加载部分数据。什么是更好的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30502850/

相关文章:

javascript - 在 Javascript 中使用 reduce 将每个单词的首字母大写

javascript - 用于显示组织结构图的免费 javascript 小部件

java - 如何在android中获取jsonarray值?

javascript - 多次调用同一函数时跟踪每个 $timeout

javascript - 使用 AngularJS 和 ng-submit 记住密码

javascript - 附加到父级,显示所有复选框值

javascript - jQuery 滚动 anchor 适用于移动设备,但不适用于桌面设备

json - 如何使用expressjs通过body参数传递通用变量来更新属性

android - 在 android 中使用选项卡 fragment 处理 Json 数据

angularjs - IFrame 未在 ng-bind-html 中呈现