2014-01-11 66 views

回答

0

RequireJS执行两个广泛的任务:打包一系列模块并缩小它们。

  1. 此处的“包装”表示布置用于部署的模块。这可能意味着创建一个包含所有模块的捆绑包,两个包含两个不同模块集的捆绑包,任意数量的捆绑包或将所有模块保存为单个文件。

    包装任务通常需要了解模块之间的依赖关系以及RequireJS的工作方式。除了使用r.js之外的其他东西来完成这项任务是有可能的,但是在一天结束时,理解依赖关系的工具将最终复制r.js的算法。所以你不妨使用r.js

  2. 在内部,r.js使用第三方库来执行缩小工作。因此可以使用r.js来封装模块,然后使用然后运行缩小器来缩小结果文件。曾几何时,我已经做到了寻找一个难以捉摸的bug。我的记忆可能是模糊的,但我记住的重要设置:

    • optimize: "none"
    • skipDirOptimize: true
    • normalizeDirDefines: "all"