Jquery - 与函数中的其他对象一起延迟返回

时间:2017-05-12 08:45:01

标签: javascript jquery promise jquery-deferred

我有一个看起来如此的功能:

function get_modifications_as_objects() {

var deferred = $.Deferred();

//Do stuff.....

return {
    actual_lov_values : actual_lov_values,
    new_lov_values : new_lov_values,
    deleted_lov_values : deleted_lov_values
}

deferred.resolve();
return deferred.promise();  
}

对该功能的调用是:

get_modifications_as_objects()
    .then(function(lov_values_object) {
        console.log(lov_values_object);
    });

当然,在这种情况下,“。then”不起作用,因为它永远无法回报我的承诺。 所以我尝试将两个返回包装成单独的函数,但是我无法使其工作。

我需要返回承诺和其他对象,我该怎么办?

1 个答案:

答案 0 :(得分:0)

使用deferred.resolve()方法

传递数据
var deferred = $.Deferred();

//Do stuff.....
deferred.resolve({
    actual_lov_values: actual_lov_values,
    new_lov_values: new_lov_values,
    deleted_lov_values: deleted_lov_values
});
return deferred.promise();