我已经把Bluebird包括在内......
<script src="../../js/libs/bluebird.min.js" type="text/javascript"></script>
当我运行以下代码时......
requestEvent(request, src)
.then(function (response) {
...
})
.finally(function () {
...
});
function requestEvent(request, src) {
return new Promise(function (resolve, reject) {
$.ajax({
url: 'mywebsite',
type: "POST",
success: function (response) {
if (response.status == 0) {
reject(response.message);
}
resolve(response);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
reject(XMLHttpRequest.responseText);
}
});
});
}
我明白了......
TypeError:requestEvent(...)。then(...)。finally不是函数
为什么最终不存在?
这是客户端/浏览器代码。
答案 0 :(得分:3)
finally()
不是承诺
阅读本文:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise 德尔>
您需要检查蓝鸟的路径是否正确。
更新2018: .finally()
现在(TC39第4阶段;已完成)现在正式规范的一部分,您可以在上面的相同链接中看到或in this specific page。但是not many browsers support it yet。