RequireJS捆绑配置与捆绑模块

时间:2017-04-15 10:48:45

标签: javascript requirejs bundling-and-minification requirejs-optimizer

  1. requirejs bundles config和。之间的区别是什么? 模块优化(即多个模块)?在我看来 两者都产生相同的东西 - 而不是创造一个 单个优化文件,创建多个优化文件 文件有多个模块。我的理解是否正确?使用捆绑包而不是捆绑模块有什么优势吗?

  2. 使用r.js'modules'进行优化时,可以提供一个 'create:true'配置,如果模块名称,则创建文件 不是现有的模块。但是我没有看到其他模块 使用'create:true'引用模块会相应地更改。

    "modules": [{ "name": "some/existing/Module" }, { "name": "some/non/existing/path", "create": true, "include": ["x", "y"] }]

    在上面的例子中,JS文件是如何"some/non/existing/path.js"的 由r.js生成加载到浏览器中?

1 个答案:

答案 0 :(得分:1)

  1. 将所有模块捆绑在一个文件中可能并不适合所有应用。根据要求JS是一个随需应变的JS模块加载器,可能不需要一些模块。根据其使用模式将捆绑包拆分为单独的捆绑包可以提高应用程序的负载效率。

  2. 在这种情况下,它会生成一个包含模块“x”,“y”和“some / non / existing / path”的文件(因为你没有提到 skipModuleInsertion 是< strong> true )路径“some / non / existing / path”,如

  3. define('x', [dependencies], function(){})
    
    define('y', [dependencies], function(){})
    
    define('some/non/existing/path', [dependencies], function(){})

    这将从requirejs配置文件加载。如果您在 bundlesConfigOutFile 路径中提供文件路径,则需要js在配置文件中插入这些配置。有关更多信息,请参阅此 sample configuration file