如何将 jQuery $.get 变成 Bluebird thenable?

How to turn jQuery $.get into Bluebird thenable?

我想 GET 和 jQuery 然后可以得到它的结果,但是 then 永远不会发生;为什么?我当然会收到 JSON 回复。以下是完整代码:

var Promise = require('bluebird');

new Promise(function (resolve, reject) {
    return $.get(url.address, url.options, 'json');
}).then(function (result) {
    console.log(result);
});

使用Promise.resolve,它将来自另一个库的值或thenable(例如$.get的return值转换为Bluebird promise。

Promise.resolve($.get(...)) // converts to bluebird promise

您的示例代码是错误的 - promise 构造函数完全忽略 return 值 - 在即将推出的 bluebird 版本中,这是 warning