这在backbone.js中是正常的吗?
Is this a normal occurrence in backbone.js?
当渲染视图时,我似乎在写这样的东西…
_.each @model.nestedcollection.models, (nestedmodel) ->
我觉得在某些时候我可能需要写一些像…
_.each @model.nestedcollection.models, (nestedmodel) ->
_.each nestedmodel.nestedcollection.models, (nestednestedmodel) ->
#pass into new view
。
这是正常的还是我应该用更好的方式来处理?
这是正常的。骨干文档为迭代提供了一系列下划线方法。你会看到_。每个都排在最前面。您应该了解这些方法(如果您还没有),并使用最合适的方法。您的第二个示例可能是使用_的一个很好的用例。每个都作为外部迭代器,并将更特定类型的迭代器(如select、detect、reject或reduce)作为内部迭代器。根据您的意图选择合适的迭代器函数。
除了已经说过的以外,还有一点需要注意,主干文档中列出的函数在主干集合上是直接可用的。
你不必调用_.each @model.nestedcollection.models, (model) ->
,你可以调用@model.nestedcollection.each (model) ->
…或者任何正确的coffeescript语法都是。
在功能上是相同的,因为它委托给下划线的each
方法,但更容易键入和读取,因为它直接在集合上。
update关于你的问题,我更愿意德里克的具体回答。我的建议太模糊了。
除了看过文档之外,我对backbone不太熟悉。
可以说是OOP:您可以创建一个对象,该对象可以自动迭代其组成的内部模型并呈现它们。这样,它们的任何组合都会自动迭代它们的内部模型并渲染它们。
近似功能:或者,您可以将渲染函数传递给所有嵌套模型,并让它们各自使用它。
相关文章:
- backbone.js无法渲染视图
- 如何使用backbone.js从集合中获取模型名称
- Backbone.js restful json API design
- 2个backbone.js集合,具有相同的模型,但排序顺序不同
- Backbone.js micro templating
- FancyTree JS+Backbone.JS-将数据加载到FancyTree时出现问题
- Backbone.js将模型绑定到视图时出错
- minimy javascript是什么意思?Backbone.js
- Backbone.js视图中的多个模型
- 在哪里存储HTML模板以在Backbone.js中使用
- 带有jquery插件的backbone.js视图
- 在Backbone.js中为窗口对象指定变量
- 如何在Backbone.js中编写可重用的模型和视图
- Backbone.js批量更新集合
- 从模型传递id以查看Backbone.js
- Backbone.js中的名称间距
- 一种将Apache Thrift JS绑定与Backbone.JS一起使用的方法
- 在Backbone.js中将回调绑定到此
- Backbone.js ListenToOnce被调用两次
- 使用Backbone.js访问JSON响应的部分