|
|
1
3
使用requireJs的要点是要有一种合理的方式来模块化代码。假设你有一个有几千行代码的应用程序,你不想在一个文件中处理这些。因此,如果您开始将其拆分为不同的文件,则需要一种方法以正确的顺序加载所有单个文件。当然,你可以自己创建20个脚本标记,并确保它们的顺序正确,但随着代码的增长,你必须添加更多的脚本标记,对于每个文件,你必须找到正确的位置。这就是requireJs的作用所在。 假设你有一个3脚本,a.js依赖于B.js,后者依赖于C.js 对于脚本标记,它看起来是这样的:
具有所需的Js
在每个脚本中,您都声明了dependencies:
这是一个非常简单的例子,但关键是您不必关心模块的顺序,因为requireJ会按照正确的顺序加载。 回到您的问题,优化器更像是一个附加组件,所以如果您有一个小的代码库,可以放在一个文件中并且仍然可以维护,那么只需使用uglifyJs。但是,如果您想将代码拆分为模块,那么需要Js。 |
|
|
2
1
UglifyJS和RequireJS有着截然不同的目的,两者都可以应用于您的情况。 RequireJS和异步模块定义背后的想法是将代码分成更小的块,使其更易于管理。就性能而言,它有两个主要优点:
一个很好的例子是图表库。浏览器使用不同的标准来渲染图形:svg、vml、canvas等。图表库将为这些标准中的每一个提供代码,但在运行时,它将只加载与特定设备和浏览器相关的部分。 |
|
|
3
0
好吧,如果你在网站上的每个页面都使用一个文件,那就是 可怕的 用于代码重用。 您不想将相同的代码复制/粘贴到 每个 页文件也不会被缓存,这会大大增加页面加载时间。 另请参阅: RequireJS's "why" page |
|
|
4
0
使用requirej,您可以在JS中拥有与其他编程语言相同的开发过程。 您可以编写模块,只需引用它们的包含文件,这些模块就可以很容易地用于其他项目。 最终,当为网络写作时, requirejs has an optimizer 这将使模块变得丑陋,并将其组合在一个脚本中。 |
|
|
kurtgn · 网页包-UgifyJS失败 8 年前 |
|
|
Daniel · 调试时源映射是否有效? 11 年前 |
|
|
M.K. Safi · UglifyJS可以替代RequireJS吗? 12 年前 |