如何使用多个应用程序设置Dojo构建过程?

时间:2015-05-05 18:07:07

标签: node.js build dojo

我有一个单页Dojo(1.8)应用程序,构建在Colin Snover's Dojo Boilerplate之上,它构建并运行良好。现在我已将网站扩展为多个页面,其中一些页面还有其他Dojo应用程序。它在源目录中运行良好,但构建过程无法获取其他文件,因此已安装的网站已损坏。

我需要更新构建过程,以便优化和复制所有文件,但我无法确定应该添加其他引用的位置。

(我已经浏览了很多Dojo文档,但是它倾向于关注树的细节,甚至是树枝的细节,而不仅仅说森林的样子。)

原始样板文件树如下:

  • /build.sh:基于bash的构建脚本,其核心运行node.js下的构建工具
  • /profiles/app.profile.js:"应用程序构建配置文件",使用--profile选项交给构建脚本
  • / webroot /:根Web服务器目录,包含:
    • / dijit /,/ dojo /,/ dojox /,/ util /:标准的Dojo源目录
    • / app /:应用程序目录,包含
      • main.js:应用程序的主要入口点,它需要所有内容,然后解析DOM以实例化各种应用程序对象
      • run.js:一些基本的require()ments,使用--require选项交给构建工具
      • (应用程序代码的其余部分)

从/ webroot / util / buildscripts /调用构建工具,如下所示:

node ../../dojo/dojo.js load=build --require ../../app/run.js --profile ../../../profiles/app

我现在添加了两个新应用程序:一个在/webroot/info.html中托管,源代码在/ webroot / info / 中,另一个在/webroot/licenses.html中,源代码在/ webroot中/ licenses / (两个应用程序都有基于初始样板文件的run.js和main.js)。新的应用程序使用各种Dojo工具,以及/ webroot / app /*中的一些类。

但是,我在哪里添加对这些新应用的引用,以便构建过程做正确的事情?以下是我提出的一些可能性:

  • 向构建工具添加新的--require newApp/run.js选项
  • 添加新的配置文件,其他--profile newApp.profile.js选项包含在构建工具
  • 添加新的"图层"到现有的app.profile.js文件
  • 多次运行构建工具,每次为其中一个应用程序配置,信任它以正确合并文件到目标目录(我怀疑这会起作用,但我已经考虑过了......)< / LI>

那么,我从哪里开始呢?

1 个答案:

答案 0 :(得分:0)

最简单的方法是为每个应用程序创建一个bash文件,你仍然可以通过命令行传递bash变量($ 1 $ 2,...)来优化到一个文件。

所以基本上,你将build.sh复制到每个app目录,调整路径,然后你创建一个主shell脚本,调用每个app的build.sh