如何将jQuery $ .get转换为Bluebird可用?

时间:2015-06-03 10:35:20

标签: jquery ajax get promise bluebird

我希望使用jQuery GET并确定其结果,但then永远不会发生;为什么?当然,我得到了我的JSON响应。以下是完整代码:

var Promise = require('bluebird');

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

1 个答案:

答案 0 :(得分:2)

使用Promise.resolve,它会将一个值或then能够从另一个库(例如$.get的返回值转换为蓝鸟承诺。

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

你的示例代码是错误的 - promise构造函数完全忽略了返回值 - 在即将发布的bluebird版本中,这是warning