我创建了一个依赖于 dojox/data/JsonRestStore 的 Dojo 模块,如下所示:
define("my/MyRestStore",
["dojo/_base/declare", "dojox/data/JsonRestStore"],
function(declare, JsonRestStore) {
var x = new JsonRestStore({
target: '/items',
identifier: 'id'
});
...
这很好。但现在我想加载 JsonRestStore 代码的未压缩版本,以便调试它。我找不到任何有关如何执行此操作的文档,但由于有一个名为“JsonRestStore.js.uncompressed.js”的文件,我将代码更改为:
define("my/MyRestStore",
["dojo/_base/declare", "dojox/data/JsonRestStore.js.uncompressed"],
function(declare, JsonRestStore) {
...
认为这可能有效。
我可以看到 JsonRestStore.js.uncompressed.js 文件正在 FireBug 中加载,但尝试执行此操作时出现错误new JsonRestStore
:
JsonRestStore is not a constructor
这应该工作吗?
有没有办法将 Dojo 配置为使用所有模块的未压缩版本?这就是我真正想要的,但如果这是唯一的方法,我会满足于每个依赖项。
更新
我找到了一种方法来实现我想要做的事情:将 JsonRestStore.js.uncompressed.js 文件重命名为 JsonRestStore.js。
但是,这似乎有点像一个 hacky 解决方法,所以我仍然很想知道是否有更好的方法(例如通过配置)。