Ampersand.js 后自动重新渲染
Auto re-render in Ampersand.js
我有一个主应用视图,它有 2 个子视图。每个子视图都有自己的传递给它的集合。
其中一个集合正在用户旅程中更新。但是与其关联的子视图没有更新。
如何在集合更新后重新呈现视图?
据我了解,您正在渲染多个项目,每个项目对应于您 collection 中的一个模型。在这种情况下,要利用相应项目的动态 inserting/removing,您应该在子视图中像这样使用 renderCollection
:
render: function(){
this.renderWithTemplate(this);
this.renderCollection(this.collection, ItemView, this.el.querySelector('SELECTOR'));
return this;
}
这里的ItemView是collection中一个模型对应的视图(是构造函数,不是实例化视图)。从此视图中,您可以访问 this.model
,并且在此视图中,您可以定义您可能需要的任何绑定和事件。有关详细信息,请查看 official documentation。
我有一个主应用视图,它有 2 个子视图。每个子视图都有自己的传递给它的集合。
其中一个集合正在用户旅程中更新。但是与其关联的子视图没有更新。
如何在集合更新后重新呈现视图?
据我了解,您正在渲染多个项目,每个项目对应于您 collection 中的一个模型。在这种情况下,要利用相应项目的动态 inserting/removing,您应该在子视图中像这样使用 renderCollection
:
render: function(){
this.renderWithTemplate(this);
this.renderCollection(this.collection, ItemView, this.el.querySelector('SELECTOR'));
return this;
}
这里的ItemView是collection中一个模型对应的视图(是构造函数,不是实例化视图)。从此视图中,您可以访问 this.model
,并且在此视图中,您可以定义您可能需要的任何绑定和事件。有关详细信息,请查看 official documentation。