$。当多个fetch()打破骨干模型时

时间:2016-01-16 23:10:41

标签: javascript jquery backbone.js fetch deferred

我想在我的项目中使用$ .when() 如果我写下这样的话:

    var getTaskInfo = new Task({'id': task_id}).fetch();

    $.when(getTaskInfo).then(function (obj1) {
        console.log(obj1);
    });

控制台输出给了我:

Object {id: 1, task_type_id: "1", project_id: "1", order_in_project: 1, main_answer_id: "1"…}

,一切正常

但是当我尝试使用多次抓取()时

    var getTaskInfo = new Task({'id': task_id}).fetch();
    var getAllAnswers = new TaskAnswers(null, {'task_id': task_id}).fetch();

    $.when(getTaskInfo, getAllAnswers).then(function (obj1, obj2) {
        console.log(obj1);
    });

控制台输出显示obj1现在是:

[Object, "success", Object]
0: Object
1: "success"
2: Object
length: 3

这不是我在等待的对象。
我做错了什么?我只是期望obj1给出的输出就像第一种情况一样。

1 个答案:

答案 0 :(得分:1)

尝试访问.then()

上的对象
$.when(getTaskInfo, getAllAnswers).then(function (obj1, obj2) {
    console.log(obj1[0], obj2[0]);
});