【发布时间】:2015-07-15 10:58:23
【问题描述】:
我知道你们在想什么,can't he just use all 3?是的,我可以,但我的问题是:它们不会相互抵消吗?
tl;dr
- 捆绑会使 RequireJS 过时吗?
- 捆绑会使 CDN 过时吗?
- 如果我必须在捆绑或 RequireJS+CDN 之间做出选择,我如何确定使用哪个? CDN 常见文件和捆绑不常见文件是最佳实践吗? SPA 文件呢?
长版
例如,我们捆绑文件以减少 HTTP 请求。而使用 RequireJS 以便可以根据需要动态和异步加载文件。
那么如果我们将所有的 JS 文件打包成 1 个,还需要 RequireJS 吗?
另外,我们使用 CDN,所以浏览器可以访问缓存版本,所以如果用户访问 5 个网站,所有这些网站都使用流行的 jQuery CDN - 即http://cdn.com/jquery.min.js - 浏览器实际上不需要发出任何 HTTP 请求最后 4 个站点上的此文件,这比捆绑该文件要快得多。如果这些站点改为从 CDN 访问一个唯一的捆绑文件 - 特定于他们的需求 - 缓存“命中”的几率会变得低得多。而且,由于“命中”的几率较低,因此即使是使用该网站的人也不太可能缓存该文件。
那么捆绑文件甚至放在 CDN 上真的有帮助吗?
【问题讨论】:
标签: requirejs cdn bundling-and-minification