假设我有一个名为Submissions的控制器,在其中,我有一堆不同的模块(例如,提交页面上的容器允许用户:favorite
,vote
,{{1}提交。
在Backbone世界中,我应该基本上为每个模块创建一个视图吗? E.g。
like
或者我应该创建一个提交视图然后执行此操作:
var submissionsFavoriteView = new SubmissionsFavoriteView({});
然后在我的submissionsView中有处理收藏,投票,喜欢等的方法?
e.g。
var submissionsView = new SubmissionsView({});
答案 0 :(得分:1)
这实际上取决于每个模块的功能有多少。
如果你的“喜欢”模块只是一个按钮,那么为它创建一个特殊视图的可能性就是过于复杂的代码。
需要考虑的事项:
您是否可以在界面的其他部分重用模块或其中的一些功能(=视图方法),如果是这样,将其放入自己的视图中
您的观看代码变得越来越难以理解,如果是这样,请尝试将其拆分为较小的视图
如果您认为最终会收到很多观点,我强烈建议您使用Marionette.js。如果您的应用程序开始增长,它确实为视图依赖关系管理和呈现节省了大量代码。