我正在设置
var x = (collection.fetch({context:collection}).done(function() {
return this.length;
}))();
但由于它是一个异步操作,我需要等待分配变量,直到回调完成后。我该怎么做?
答案 0 :(得分:0)
在done()
函数本身中分配变量。
done(function() {
//this runs when the asynchronous action is finished.
var x = 'my value';
}))();
你的评论无法知道你的意思,但听起来你只想这样做:
done(function() {
//this runs when the asynchronous action is finished.
var x = this.length;
}))();
但我不知道this.length;
指的是什么...所以我不能说。可能有一些数据可用于done()
功能......也许你想要那样:
done(function(response) {
//this runs when the asynchronous action is finished.
var x = response;
}))();
从那里开始,你可能想要将一个函数链接到promise - 这是技术性的,所以我只是给出简单的答案并说你可以使用回调来传递x
你需要的地方:
done(function() {
//this runs when the asynchronous action is finished.
var x = this.length;
someFunction(x);
}))();