我有一个单页 Dojo (1.8) 应用程序,构建于 Colin Snover's Dojo Boilerplate 之上,并且它构建和运行良好。现在我已将该网站扩展为多个页面,其中一些页面还有其他 Dojo 应用程序。它在源目录中运行良好,但构建过程不会获取附加文件,因此安装的网站被破坏。
我需要更新构建过程,以便它优化并复制所有文件,但我不知道应该在哪里添加额外的引用。
(我已经阅读了很多 Dojo 文档,但它往往侧重于树木的细节,甚至是 Twig ,而没有说明森林的样子。)
原始样板文件树如下:
- /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 文件添加新的“层”
- 多次运行构建工具,每次都针对其中一个应用进行配置,相信它能够将文件正确合并到目标目录中(我怀疑这是否可行,但我已经考虑过......)
那么,我该去哪里呢?
最佳答案
最简单的方法是为每个应用程序创建一个 bash 文件,您仍然可以通过从命令行传递 bash 变量($1 $2,...)将其优化为一个。
基本上,您将 build.sh 复制到每个应用程序目录中,调整路径,然后创建一个主 shell 脚本,调用每个应用程序的 build.sh
关于node.js - 如何设置包含多个应用程序的 Dojo 构建流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30060184/