這是我的情況。我在第一個視圖中收集了一個成員列表(model = member,collection = members)。然後我希望它們能夠在我的第三個視圖中顯示。問題是每次我想訪問memberList時,我必須創建一個新實例,因此數據會丟失。我正在使用require.js來模塊化視圖。我如何有效地訪問我在第一視圖中實例化的memberList變量?在requirejs中使用應用程序級持久性模型,backbonejs
1
A
回答
1
一個骯髒的方法是在你的AMD模塊中返回新的Collection()。 Require.js會緩存這一點,每次你需要它的時候它會返回同一個實例 例:
define(function(require){
var Backbone = require('backbone');
return new Backbone.Collection.extend({});
});
雖然原因是很難測試,我不推薦這種方式。
另一種方法是有一個對象的應用程序,你可以在你的模塊保存到收藏,模型等的引用,然後要求它像https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.application.md
另一種方法是有中保,將實例化採集,爲您和會將方法從集合中暴露給其他模塊。你需要中介而不是集合。 http://addyosmani.com/resources/essentialjsdesignpatterns/book/#mediatorpatternjavascript
由你決定,但耦合越少越好。
希望有所幫助。
相關問題
- 1. 使用RequireJS的持久性/可訪問BackboneJS模型
- 2. 如何使應用程序在iOS/iPhone中保持持久性?
- 3. 使用backboneJS + requireJS +在PhoneGap的
- 4. 在ASP.NET MVC應用程序中使用EntityFramework的持久性
- 5. 在Windows商店應用程序中使用持久性XML
- 6. iPhone應用程序查看持久性
- 7. 使用JSDoc + RequireJS + BackboneJS的模塊和類
- 8. 使用requirejs在backbonejs中擴展視圖
- 9. 使Java Swing應用程序持久化
- 10. 使用JPA Persistence.xml作爲桌面應用程序的持久性
- 11. 嘗試使用EC2託管持久性Web應用程序
- 12. 使用Rails跨應用程序會話持久性(thinkbot/clearance)
- 13. 在Web應用程序中可擴展的持久性
- 14. 在CloudBees中配置Java EE 7持久性應用程序
- 15. iOS在後臺應用程序中的數據持久性
- 16. 在Maven NetBeans平臺應用程序中的持久性
- 17. 持久性模型與視圖模型
- 18. 持久性與非持久性 - 我應該使用哪一種?
- 19. 使用應用程序類在Android中存儲持久數據
- 20. 如何在Android應用程序中使用持久數據庫
- 21. Android - 使應用程序關閉後Webview DomStorage持久性
- 22. 沒有使用JavaSE應用程序的EntityManager的持久性提供程序?
- 23. Backbone多頁應用程序中的Singleton模型與RequireJS
- 24. 應用程序特性持久性選擇 - NoSQL還是RDBMS?
- 25. 在模型文件中定義Rails模型持久屬性
- 26. iPhone應用程序中的數據持久性
- 27. iOS-Swift應用程序中的數據持久性
- 28. Rails應用程序中的非持久性數據
- 29. Phonegap在後臺持久性應用程序,如何?
- 30. 谷歌應用程序引擎持久性和內部網應用程序
你能解釋一下你的意思嗎?難以測試? – blockhead
如果你在初始化()中有邏輯,很難測試這個原因,所以在你需要文件的時候已經調用了initialize。只是要注意的事情。 – chchrist