1
  1. requirejs 捆绑配置和模块优化(即多个模块)有什么区别?在我看来,两者都产生了相同的东西——而不是创建一个优化的文件,而是创建多个优化的文件,每个文件都有多个模块。我的理解正确吗?与模块捆绑相比,使用捆绑包有什么优势吗?

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

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

    在上述情况下"some/non/existing/path.js" ,r.js 生成的 JS 文件是如何加载到浏览器中的呢?

4

1 回答 1

1
  1. 将所有模块捆绑在一个文件中可能并不适合所有应用程序。由于 require JS 是一个按需 JS 模块加载器,因此某些模块可能一直都不需要。根据使用模式将捆绑包拆分为单独的捆绑包可以提高应用程序的加载效率。

  2. 在这种情况下,它会在路径“some/non/existing/path”中生成一个包含模块“x”、“y”和“some/non/existing/path”的文件(因为您没有提到skipModuleInsertiontrue)喜欢

define('x', [dependencies], function(){})

define('y', [dependencies], function(){})

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

这将从 requirejs 配置文件中加载。如果您在bundlesConfigOutFile路径中提供文件路径,则 Require js 会将这些配置插入到配置文件中。有关详细信息,请参阅此 示例配置文件

于 2017-04-24T05:01:33.990 回答