我正在構建一個Backbone應用程序,我正在觀察一些我不能放置的行爲。請看下面的集合:在控制檯中的非確定性骨幹集合屬性分配
window.Pictures = Backbone.Collection.extend({
model: Picture,
url: 'latest.json',
parse: function(response) {
this.foobar = 1;
},
fetchPage: function() {
this.foobar = 2;
return this;
}
});
在Chrome(或Firefox)控制檯我發出以下命令:
> p = new Pictures(); p.fetch(); p.fetchPage();
> p.foobar
1
當我這樣做:
> p = new Pictures(); p.fetch()
> p.fetchPage();
> p.foobar
2
我真不」不明白這一點。爲什麼第一次執行與第二次執行不同?
好的。這很清楚。所以當運行第一個變體1000次時,我應該至少看到正確的結果幾次(我知道,這是不能保證的,但機會接近1)? – harm 2012-02-10 18:43:03
@harm:也許吧。在控制檯中,定時問題非常難以處理和加倍。在返回JSON之前將您的服務器代碼更改爲休眠一秒或兩秒應該會給您更多可預測的結果。 – 2012-02-10 18:47:45
然後我會試一試。謝謝您的幫助。 – harm 2012-02-13 09:01:56