我想要做的是在PhoneGap和Backbone.js中构建一个简单的应用程序.该应用程序有一个登录页面,在成功登录后,会将用户发送到一个带有几个选项的简单菜单.用户可以选择查看其保存的列表,查看项目列表或查看信息页面.我知道我想如何构建所有的视图和模型,所以我的问题是,与使用多个页面相比,在一个页面上执行此操作是否有任何缺点.
将其分解为更小的部分:
>加载一页中的所有javascript是否会产生严重的性能影响?
>如果路由器关闭,.remove()和.unbind(),切换到新视图时的所有当前视图,是否仍然存在内存问题风险?
解决方法
Backbone设计用于SPA应用程序.我不是说你不能跨越多个页面跨越Backbone,但在我看来,这增加了更多的复杂性.根据您的描述,我会将您的申请作为SPA保留.
其次,使用模块构建应用程序.使用诸如require.js之类的库.我不能推荐它.我不会详细介绍你为什么要使用它,因为你可以阅读更多关于它的内容here(我建议阅读整本书).一旦您的应用程序准备好部署,您就可以使用r.js,require.js的构建脚本.这会将所有或部分模块连接到一个文件中.这将大大加快您的应用程序的性能,特别是如果您有一堆模块.
最后关于内存优化,我使用Derick Bailey开发的方法,您可以阅读有关here的内容.
希望这可以帮助.