繁体   English   中英

RequireJS有多个页面 - 使用优化器

[英]RequireJS with multiple pages — using optimizer

我的JavaScript组织如下所述: https//stackoverflow.com/a/10816983/83897

我有一个JavaScript密集型ASP.NET应用程序,它有多个不同的页面(而不是单页面应用程序)。 每个页面都有不同的依赖关系,所以我有一个每页.js文件(page1.js,page2.js等)。 每个都有一个require()调用,声明它的依赖:

require(['jquery', 'page1Module'], function($, module){
    // page1 specific stuff here
});

这很好用。 我想知道的是 ,RequireJS构建过程如何工作? 我想我想要一个每页“build”.js文件(例如page1-build.js,page2-build.js等)? 我可以利用现有的软件吗?

该过程可能如下所示:

  1. 将给定脚本的所有依赖项编译到临时目录中的一个build.js文件中。
  2. 计算编译文件的MD5指纹。
  3. 将该指纹与公共/资产中的可比较文件进行比较。
  4. 创建内存中的RequireJS清单,将每个模块映射到已编译的文件。 将此清单附加到已编译的文件中。
  5. 以某种方式使生产使用构建文件。

编辑:经过一番思考,我认为使用node + r.js的RequireJS优化只是更大的资产构建过程的一部分,资产构建依赖于其他一些第三方库。 RequireJS优化将仅用于某些JavaScript依赖项(即每个页面的JavaScript文件,包括找到的依赖项),可能在某些XML配置中指定。

您可以通过在构建配置文件中指定模块来创建多个优化文件:

{
   modules: [
     {
         name: "main"
     },
     {
        name: "page1",
        include: ["dep1", "shim2"],
        exclude: ["main"]
     }]
}

每个条目都将生成一个optmized .js文件。

更多信息: 如何在多页项目中使用RequireJS构建配置文件+ r.js.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM