gpt4 book ai didi

javascript - 每次获取时都进行 Backbone 调用获取

转载 作者:行者123 更新时间:2023-11-28 02:12:16 25 4
gpt4 key购买 nike

我已经设置了一个基本模式,我可以在其中调用 fetch() 并且模型将会更新。但是,我希望每次尝试访问属性时都调用 fetch()

所以我有这样的东西

get: function () {
this.fetch()
Backbone.Model.prototype.get.call(this, attr);
}

这显然不起作用,因为 this.fetch() 是异步的。有没有办法等待获取,或者以更好的方式实现这个概念

最佳答案

我不确定您是否应该覆盖 get 方法。您最好创建一个异步版本,并从中返回一个延迟对象。

Fetch 是异步的,没有办法解决这个问题,因此您必须以异步方式执行此操作。

像这样的东西可能会起作用:

getAsync: function(attribute){
var dfd = $.Deferred(), model = this;
this.fetch().done(function(){
dfd.resolve(model.get(attribute));
});
return dfd.promise();
}

然后你可以像这样使用它:

model.getAsync(field).done(function(value){
console.log(field + " was " + value)
});

(似乎在这里工作 http://jsfiddle.net/FBp6h/ )

关于javascript - 每次获取时都进行 Backbone 调用获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16908078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com