如何制作 "black box" 库层中的构建配置文件引用模块?
How do I make a build profile reference modules that are within a "black box" library layer?
这些教程让我开始使用 Dojo 构建系统。但是,我留下了一个问题,它会决定或破坏在我的案例中部署完全构建的版本的可能性。教程可能解释了它,但我没有明白。如果是这样的话,我们深表歉意!
我使用位于 AMD 层内的库;我们称它为 blackboxLayer.js
。该层内有几个包,但我想如果只有一个,问题会是一样的。因此,假设 blackboxLayer.js
包含一个名为 blackbox
的包,其中包含模块 blackbox/A
和 blackbox/B
。为了确保事情有趣,该层是可启动的。当然,它是闭源的东西。
我的应用程序模块引用 blackbox/A
或 blackbox/B
。如何让我的构建配置文件去寻找 blackboxLayer.js
文件中的 blackbox
包,而不是在目录中?
感谢您的任何意见。 :)
如果构建文件blackboxLayer.js在相对路径/release/blackbox/layers
,有一个单独的dojo层
<script type="text/javascript" src="path to dojoLayer.js"></script>
和
var dojoConfig = {
packages: [
{ name: 'blackbox', location: 'release/blackbox' }
]
};
那么这个函数里面的代码可以引用模块A和B,
require(['blackbox/layers/blackboxLayer'],
function () {
require(['dojo/parser', 'dojo/ready'],
function (parser, ready) {
ready(function () {
require(['blackbox/A', 'blackbox/B'],
function (blackboxA, blackboxB) {
// call blackboxA and blackboxB
});
});
});
});
如果没有单独的dojo层,可以在script标签中引用blackboxLayer.js,省略package def和require blackboxLayer。
自从这个问题发布以来,我一直在使用的临时解决方案是不使用 dojo 的构建器...相反,我使用轻量级 grunt 模式将 AMD 源连接到一个层中,然后我从中引用该层dojoConfig 的 deps
属性。连接过程在此处可见:https://github.com/gruntjs-updater/grunt-amd-concat
这些教程让我开始使用 Dojo 构建系统。但是,我留下了一个问题,它会决定或破坏在我的案例中部署完全构建的版本的可能性。教程可能解释了它,但我没有明白。如果是这样的话,我们深表歉意!
我使用位于 AMD 层内的库;我们称它为 blackboxLayer.js
。该层内有几个包,但我想如果只有一个,问题会是一样的。因此,假设 blackboxLayer.js
包含一个名为 blackbox
的包,其中包含模块 blackbox/A
和 blackbox/B
。为了确保事情有趣,该层是可启动的。当然,它是闭源的东西。
我的应用程序模块引用 blackbox/A
或 blackbox/B
。如何让我的构建配置文件去寻找 blackboxLayer.js
文件中的 blackbox
包,而不是在目录中?
感谢您的任何意见。 :)
如果构建文件blackboxLayer.js在相对路径/release/blackbox/layers
,有一个单独的dojo层
<script type="text/javascript" src="path to dojoLayer.js"></script>
和
var dojoConfig = {
packages: [
{ name: 'blackbox', location: 'release/blackbox' }
]
};
那么这个函数里面的代码可以引用模块A和B,
require(['blackbox/layers/blackboxLayer'],
function () {
require(['dojo/parser', 'dojo/ready'],
function (parser, ready) {
ready(function () {
require(['blackbox/A', 'blackbox/B'],
function (blackboxA, blackboxB) {
// call blackboxA and blackboxB
});
});
});
});
如果没有单独的dojo层,可以在script标签中引用blackboxLayer.js,省略package def和require blackboxLayer。
自从这个问题发布以来,我一直在使用的临时解决方案是不使用 dojo 的构建器...相反,我使用轻量级 grunt 模式将 AMD 源连接到一个层中,然后我从中引用该层dojoConfig 的 deps
属性。连接过程在此处可见:https://github.com/gruntjs-updater/grunt-amd-concat