当模块加载不可避免时,异步模块加载是否会提供任何增益?

时间:2013-12-04 14:51:20

标签: requirejs amd

如果出现从不需要加载模块的情况,像requirejs这样的AMD模块可以帮助保存网络往返。但是在加载模块是不可避免的时候它会提供任何收益,例如加载jQuery和bootstrap javascript文件等常用库。

1 个答案:

答案 0 :(得分:-1)

当加载模块是不可避免的时,requirejs根本不提供任何收益。相反,它会伤害你的表现。这是因为通过脚本加载资源总是比通过html解析器加载它更慢。因此,通常通过<script>标记加载的脚本比通过ajax加载它然后eval加载它更快。 <img>标签也是如此,对于任何静态资源都是如此。

只有当您的脚本太大并且您希望一步一步而不是一次性加载模块时,AMD才能提供优势。如果出现根本不需要模块的情况,那就是在网络往返和带宽方面取胜,在这种情况下肯定会使用它。

jQuery和bootstrap等库通常都是预先需要的,没有必要将它们委托给AMD。