node.js - 如何设置包含多个应用程序的 Dojo 构建流程?

标签 node.js build dojo

我有一个单页 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/

相关文章:

node.js - Mongoose : finding documents with a specific condition

git - 在 CLion 远程工具链中跟踪 git 提交时如何触发 cmake 重新配置

javascript - 如何在 Joi 中捕获验证失败的回调

node.js - 我可以在 Passport 策略中使用 Salt 代替纯文本密码吗?

visual-studio-2010 - 调试现有的共享点解决方案

javascript - 从 dojo 组合框中删除选项

javascript - 无法获取组合框的值

javascript - 如何清除 dijit 表单中的验证消息

javascript - Express 中基于子域(主机)的路由

ant - 在 sublime text 2 中指定和切换 Ant 目标