gpt4 book ai didi

javascript - 如何在 Dojo 1.7 中使用未压缩的文件?

转载 作者:行者123 更新时间:2023-11-29 10:50:31 25 4
gpt4 key购买 nike

我创建了一个依赖于 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 workaround,所以我仍然很想知道是否有更好的方法(例如通过配置)。

最佳答案

你有两个选择

1) 创建自定义构建。自定义构建将输出一个可用于调试的未压缩文件。想想 dojo.js.uncompressed.js,但它包含您使用的所有额外模块。

2) 对于开发环境,使用 dojo 源代码。这意味着下载 Dojo Toolkit SDK并在开发环境中引用 dojo.js。

对于我从事的项目,我会两者兼顾。我设置了 Dojo 配置,使其可以是动态的,并且我可以使用查询字符串参数更改我想要的配置。

当我调试问题时,我会使用第一个选项,只是让我单步执行代码并查看发生了什么。当我编写一些重要的 js 并且不希望自定义构建的开销看到我的更改时,我使用第二个选项。

我在此处对此做了更多描述

http://swingingcode.blogspot.com/2012/03/dojo-configurations.html

关于javascript - 如何在 Dojo 1.7 中使用未压缩的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11020267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com