我正在尝试从dojo调用我的RESTful服务。我从调试器中看到的只是,它试图调用服务,但它没有到达那里。没有错误。我可以看到'你好'警报。
define(["dojo/store/JsonRest","dojo/domReady!"],
function(JsonRest){
alert("Hello");
var rest = new JsonRest({
target: "/my/rest/call"
});
}
);
我正在关注dojotoolkit的this page。
但如果我使用declare
打电话,那就可以了。
define(["dojo/store/JsonRest","dojo/_base/declare","dojo/domReady!"],
function(JsonRest, declare){
var rest = declare(JsonRest);
var restResult = new rest({
target: "/my/rest/call"
});
}
);
我在这里做错了什么?
控制台中的错误消息:
答案 0 :(得分:1)
你没有在信中遵循该教程。不同之处在于您使用的是define
而不是require
。 Dojo的define
与declare
结合使用来创建新的Dojo类。 Dojo的require
用于加载和使用现有的类。以下链接是推荐阅读,在您的情况下,需要特别注意“需要模块”和“定义模块”部分:
https://dojotoolkit.org/documentation/tutorials/1.8/modules/
如果您在该教程中使用require
,则效果非常好:
require([
'dojo/store/JsonRest',
], function(
JsonRest
) {
new JsonRest({
target: 'some/resource/'
}).get(1).then(function (item) {
alert(JSON.stringify(item));
});
});
这是关于Plunker的一个工作示例:http://plnkr.co/edit/ZhsO67BFpWB5Txqy0Zl9?p=preview