【发布时间】:2013-09-15 01:32:41
【问题描述】:
我需要帮助来理解一些承诺逻辑。这就是我想要实现的目标 - 使用 jQuery 我发出 get 请求,然后我用我的 promise 将它链接起来,这会进行一些检查,我的代码:
http://jsbin.com/UVEpurU/1/edit
function checkInfoPromise(r) {
var ok = true,
promise = Ember.RSVP.Promise(function(resolve, reject) {
if(ok) {
return resolve(r);
}
else {
return reject(r);
}
});
return promise;
}
var requestPromise = $.get('/')
.then(function(r){
return checkInfoPromise(r);
});
requestPromise.then(function(r) {
console.log(r);
}).fail(function(r) {
console.log('fail');
});
它并没有像我预期的那样工作。文档说它们应该可以相互正常工作,但它们不能正常工作,或者我的代码不正确。
与 jQuery+jQuery 相同的逻辑可以正常工作:
http://jsbin.com/AYeyaxO/1/edit
Ember+Ember 有效:
【问题讨论】:
-
你的第一个例子对我有用;)
-
它是否在控制台中打印 html?就我而言,它会打印一些 javascript 内容。
-
我的错,它打印的是 promise 本身而不是 html D: