2
我想我可能會開始在Backbone中做一些頻繁重疊的「獲取」調用。緩存這些調用並重新使用它們的最佳方式是什麼?Backbone.js緩存讀取調用的正確方法是什麼?
我想我可能會開始在Backbone中做一些頻繁重疊的「獲取」調用。緩存這些調用並重新使用它們的最佳方式是什麼?Backbone.js緩存讀取調用的正確方法是什麼?
有很多可能性來實現這一點。其中一個就是實現你自己的Backbone.sync方法。在那裏你可以緩存你的結果(例如,作爲url - 結果對)。當調用fetch時,查找url並返回緩存結果或從服務器獲取結果。
更復雜的方法是使用一種代理集合。這是一個全局可用的集合,也是唯一一個可以提取服務器端的集合。所有其他集合都通過代理獲取自定義獲取方法實現來獲取其模型。 代理緩存服務器端結果,並創建模型實例(並保留它們)。因此,您應該保持對模型實例的控制權,並防止您在應用程序中使用相同ID的多個模型。