【发布时间】:2019-04-26 11:46:00
【问题描述】:
我有以下功能
function commentCount(id) {
var deferred = new $.Deferred()
var url =
_spPageContextInfo.siteAbsoluteUrl +
"/_api/lists/getByTitle('Comments')/items?$select=Id&$filter=ItemID eq " +
id +
" and Title eq 'Colleague'"
getData(url).then(function(data) {
deferred.resolve(data.d.results.length)
})
return deferred.promise()
}
现在我想在 HTML 字符串中返回该值,如下所示,但它显示 [object object]
'<div class="card-footer"> <div class="row "><div class="col-lg mobile-center"><a href="#">' + commentCount(item.Id)
我怎样才能获得这样的价值
【问题讨论】:
-
整数值
-
commentCount将返回一个承诺,.. 使用 deferred 不会改变这里的事情,你可以刚刚完成return getData(url). -
你能给我看看例子吗
-
除非你说用过
async / await,否则你不能做"some string" + somePromise()之类的事情,你需要先解决你的承诺。如果使用async / await,可以这样做 ->"some string" + await somePromise() -
我们如何做到这一点
标签: javascript jquery es6-promise jquery-deferred