2012-02-13 41 views
1

我有父模型和子视图的父视图。Backbone.js - 与另一个视图共享模型的一部分

我想将模型(集合)的一部分的引用传递给子模型,以便子模型可以监视此变化并作出相应的反应。

我不确定这样做的最佳方式 - 可能是其中一种方法?

  • 通行证整个模型:我不想这样做,因为该模型包含 一堆东西,孩子不应该知道。模型的

  • 通部分:我不认为这是可能的......如果我使用 this.model.get('thesubpart'),我想我会被传递一个值,而不是 参考。

  • 在父视图中绑定子事件:这是要走的路吗?我是 不知道我会如何去做这件事。

回答

0

你的问题是有点混乱,但我觉得你想要个孩子模型的东西在父模型发生反应,虽然我不知道,如果双亲是集合或单一的模式本身。

这样做的首选方法是通过事件(例如parent.on('change', child.handleParentChange),其中handleParentChange是一个在子模型上定义的函数。由于您似乎只对特定的属性更改感兴趣,因此可以绑定到更具体的“更改:thesubpart“event

有不同的方法可以做到这一点,比如一个事件聚合器,但总体思路是一样的Be careful of zombies,但是,如果父母长大了孩子,它会将孩子留在内存中,因为的绑定(事件聚合器的一个优点,如果实施正确)

+0

父模型是包含集合的单个模型,我想要孩子的模型仅作为这个集合,而不是整个父模型。 – UpTheCreek 2012-02-14 13:00:48

相关问题