我在骨干模型的函数内部有一个 ajax 函数。我希望函数 fetchByFBID 根据返回的数据包含的内容返回 true 或 false。但是由于在执行回调之前我不知道数据是什么,因此我不知道如何在该函数中返回 true 或 false。有小费吗?
var UserModel = Backbone.Model.extend({
urlRoot: '/API/users',
defaults: {
"fbID": "",
"firstName": "",
"lastName": "",
"gender": "",
"email": "",
"site": ""
},
fetchByFBID: function(fbID) {
var that = this;
console.log(this);
$.ajax({url: "/API/users/fbID/"+fbID, type: 'GET', success: function(data) {
if(data === "false") {
return false;
} else {
that.set(JSON.parse(data));
return true;
}
}});
}
});
要调用该函数,我只需执行以下操作:
var fbUser = new UserModel();
fbUser.fetchByFBID(response.id);
我的目标是能够做类似的事情:
var fbUser = new UserModel();
if(fbUser.fetchByFBID(response.id))
//do something
else
//do something else