【问题标题】:Require.js r.js: Compile directory to single fileRequire.js r.js:将目录编译为单个文件
【发布时间】:2014-11-18 03:09:36
【问题描述】:

有没有办法配置 RequireJS 将整个目录编译成单个文件?我不是指“out”设置的正常用例。我将尝试举例说明。如果我有以下项目结构:

- app
  - main.js
  - menu.js
- module
  - file-a.js
  - file-b.js

然后假设我想将“app”目录编译为单个文件。我不关心它的依赖关系——即使它需要“模块”或其任何一个文件,它们也不会被包含在内。即使 main.js 不需要 menu.js,它也会被包含在内。生成的输出文件将定义“app/main”和“app/menu”模块。

同样,如果我想编译“模块”目录,该文件将定义“模块/文件-a”和“模块/文件-b”,而不管定义了哪些其他依赖项。

我希望这已经足够清楚了。

【问题讨论】:

    标签: requirejs requirejs-optimizer


    【解决方案1】:

    您可以在 require 的构建文件中使用 dir 参数,而不仅仅是 name 参数。

    您可以在 requirejs 文档中阅读有关构建整个目录的更多信息 - Optimize Whole Project

    如果你编写类似app-build.js的构建文件-

    ({
       appDir: ".",
       baseUrl: "app",
       dir: "../app-build",
    })  
    

    如果你运行r.js -o app.build.js,那么它将创建

    • 应用程序构建
      • main.js
      • menu.js

    这里的menu.js 不会包含在main.js 中,除非在main.js 源中的某处需要。

    【讨论】:

    • 虽然它没有单个文件输出,但这是我所追求的。我已经让 Traceur 创建 AMD 代码。现在我只想为项目的每个部分创建我的包。
    猜你喜欢
    • 2013-03-21
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    • 1970-01-01
    • 2017-07-25
    • 2017-07-24
    • 1970-01-01
    相关资源
    最近更新 更多