骨干视图和子视图

时间:2013-02-11 08:07:37

标签: backbone.js

我有一个表单,可以在单击“添加字段”按钮时动态添加字段。现在对于那个新领域,我需要有一个单独的视图,因为它附加了一些功能。我知道有一个子视图的概念。

我的问题是,何时应该在视图中选择子视图,我应该在我的情况下?

1 个答案:

答案 0 :(得分:1)

首先,检查我创建的小提琴:here

这是一个单独的视图/子视图概念的示例。

现在,根据示例并讨论子视图与单一视图选项,如果您看到示例,我为我添加的每个链接创建子视图,通过这样做:

var listItem = new printView({ model: model}); //create a new view
$('#list').append(listItem.render().el);       //append that view to my main view

这在很多方面帮助了我: -

  1. 我对每个模型都有一个视图

  2. 我可以将操作与每个视图相关联,并且可以单独处理它们

  3. 模块化

  4. 如果您选择单一视图方法,那么您在前面遇到的问题是,当我点击或删除(您定义的任何操作)特定元素时,我如何获得哪个模特是

    上述解决方案是,您可以将cid与每个元素相关联,当单击或删除该元素时(您定义的任何操作),您可以使用getByCid()来获取相应的模型。

    我个人会选择子视图或单独的视图方法,因为这会为您的代码提供更多灵活性可读性

    谢谢。