【问题标题】:Scaling web applications with requirejs使用 requirejs 扩展 Web 应用程序
【发布时间】:2015-03-06 03:26:52
【问题描述】:

我正在构建一个基于 RequireJs 的 js 应用程序。除了一件事,一切都运行良好,使用r.js 应用程序编译后大约为 2.5Mb。 而且它还没有所有可用的功能,我的意思是里面还有工作的空间。而且我担心编译出来的 js 文件会超过 5Mb,移动用户可能会面临一些网络连接慢的挑战。

所以我的问题是:

在非常大的 js 应用程序上有这么大的文件是正常的吗? 还是应该将其拆分为较小的应用程序/模块?

【问题讨论】:

  • 您可能还想查看require-lazy,它根据您的依赖项(+ 缓存清除、模块元数据)将您的应用拆分为捆绑包。
  • 感谢 Nikos,我也会考虑这个想法。我也喜欢 github 上的一些示例如何拆分大型应用程序。

标签: javascript web-applications requirejs


【解决方案1】:

我真的建议将大文件拆分为模块/文件。如今,数据传输并不是什么大问题,但这对于仍然无法访问快速网络的一些用户来说可能意味着一些真正的性能问题。 您应该检查您需要哪些资源来引导您的应用程序并首先加载它们,并且应该根据需要按需加载其他所有资源。 Requirejs 是一个非常好的方法。

【讨论】:

  • 你以前做过吗?或者您是否有一些技术作为示例,说明应用程序的某些部分应如何按需加载?
  • 我主要使用 angular 和 concatenated、offuscated 和 gzipped 整个应用程序,但这些应用程序的总大小通常小于 250kb。
  • 我建议首先将必要的引导资源与应按需提供的资源分开,这取决于您计划使用的路由框架/库,如果您使用骨干网,它相当容易这样做是因为您的路由通常指向一个 .js 文件,您应该在其中定义所需的依赖项
猜你喜欢
  • 2016-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-04
  • 2013-04-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多