【发布时间】:2021-11-05 04:49:40
【问题描述】:
我尝试使用 Promise,但无法返回正确的解析对象。
我的承诺是:
function retrievecount(id, type) {
var dfrd = $.Deferred();
var hits = "the result";
dfrd.resolve(hits);
return dfrd.promise();
}
我称之为:
retrievecount(id, type)
.then(function(hits) {
//do stuff with the hits object
});
但每当我运行此代码时,我都会收到错误:
“dfrd.resolve 不是函数”
我试过了:
hits => dfrd.resolve(hits);
和
dfrd.resolve=hits;
还有更多,但我就是无法让它工作。我在这里做错了什么?
【问题讨论】:
-
我无法复制这个问题。您也可以在不创建新承诺的情况下执行
return dfrd.resolve(hits);。 -
请创建一个可以复制问题的示例。仅仅粘贴代码并说“这对我不起作用”是不够的。请阅读:stackoverflow.com/help/minimal-reproducible-example 并使用堆栈片段:meta.stackoverflow.com/questions/358992/…
-
请提供足够的代码,以便其他人更好地理解或重现问题。
-
很抱歉,但请参阅下面的答案,问题不在我的解决方案中,而是在代码的其他地方。但是,我现在无法删除问题并引诱投反对票:-)
标签: javascript jquery promise deferred