我有一個存儲大量客戶端數據的問題,我無法決定哪種方式更好。現在我正在使用AngularJS的cacheFactory,它工作正常,但所有數據都會重新加載一個新的會話。是否值得使用本地存儲?
回答
如果您的目標是存儲客戶端和持久數據,則不能使用僅緩存當前會話數據的$cacheFactory。
一個解決方案是使用新的本地存儲API。 This awesome Angular module爲你做了所有骯髒的工作,甚至回到舊瀏覽器的cookies!
另一種解決方案是http://jmdobry.github.io/angular-cache/,它可以很好地與ngResource配合使用,並且可以很容易地配置爲同步到localStorage,所以請求不需要在頁面刷新後重新完成。
$resource('my/kewl/url/:key', { key: '@key' }, {
'get': { method: 'GET',
cache: $angularCacheFactory('MyKewlResourceCache', {
storageMode: 'localStorage' })
}
});
我覺得這個比來自接受答案的解決方案更強大。感謝$資源在其官方網站中沒有看到 –
$ cacheFactory似乎是不明確您的解決方案,因爲黑洞說,高速緩存將在每次會話過期時間清零。 $ cacheFactory只是一個以角方式的memcache實現。
angular-cache只是一個輔助API,基本上它爲$ cacheFactory添加了選項,其中一個選項是將緩存存儲到持久性存儲(如localStorage)中。
所以,如果你想存儲在持久性存儲數據,你可以使用一個模塊可像angular-local-storage或使用$cookieStore但會創建餅乾...
同樣,$ cacheFactory不緩存當前會話的數據,它將數據緩存在內存中,所以只要角度應用程序處於活動狀態即可。例如,頁面刷新會將其殺死。 @ user3305685你可以更新,請避免誤導人們? – tsemer
另一個角度模塊,沒有工作:https://github.com/jmdobry/angular-cache
- 1. AngularJS存儲陣列在本地存儲
- 2. 本地存儲vs Cookie
- 3. 本地存儲vs Web SQL
- 4. Angularjs:$ cacheFactory的日期到期
- 5. AngularJS如何緩存與$ http和$ cacheFactory
- 6. 如何將angularJS數據存儲到本地存儲中,就像會話一樣?
- 7. 查詢AngularJS的$ cacheFactory值
- 8. 本地存儲vs Cordova-sqlite-storage
- 9. HTML5本地存儲vs JSON對象
- 10. 本地存儲vs cookie的性能
- 11. 參數傳遞vs本地存儲
- 12. 遠程工件存儲庫vs本地
- 13. 在angularjs中的CacheFactory是單例嗎?
- 14. AngularJs:在本地存儲中存儲和檢索數據
- 15. 使用本地存儲來存儲AngularJS數據
- 16. $ cacheFactory $資源頁面狀態AngularJS
- 17. 將ID保存到本地存儲中,並使用按鈕angularjs
- 18. AngularJS:上傳圖片,並保存在本地存儲
- 19. 將本地存儲模型保存到本地存儲
- 20. 本地存儲HTML5
- 21. Phonegap本地存儲
- 22. 本地存儲值
- 23. JS本地存儲
- 24. javascript本地存儲
- 25. Silverlight本地存儲
- 26. HTML本地存儲
- 27. Iframe本地存儲
- 28. html5本地存儲
- 29. 本地存儲表
- 30. PhoneGap - 本地存儲
你好,你可以使用webstorage然後你可以通過工廠獲取數據,http://www.w3schools.com/html/html5_webstorage.asp – schwertfisch
是的本地存儲允許你存儲數據而不關心會話。我還建議查看https://parse.com/,以便將數據保存在雲中而不是服務器上。 – Rohit
我結束了與https://github.com/gsklee/ngStorage去Angular-way:沒有Getter'n'Setter廢話! – mb21