使用嵌套反应组件更新主干模型

时间:2014-12-10 17:59:13

标签: javascript backbone.js reactjs

我一直在使用Backbone来管理我的模型,并对模型更改的渲染视图作出反应。

为此,我在此处使用了已接受的答案:handling backbone model/collection changes in react.js其中提供的mixin侦听模型/集合上的更新,并简单地在组件上调用forceUpdate。

这适用于使用mixin的第一个根组件。但是,对于仅依赖于模型属性的嵌套组件,由于Pete Hunt(核心React开发人员)提到的反应失去了旧/新状态,因此这些组件永远不会更新:https://groups.google.com/forum/#!msg/reactjs/lT2pOKXUHY8/_mahBiK2ZxMJ

我看到两个解决方案:

  1. 在根组件之后为所有后续子组件使用json版本的模型或集合。 (将model = {this.props.model.attributes}传递给孩子们)
  2. 通过全局模型/集合
  3. 将mixin用于子组件

    选项1似乎限制了主干的权力,因为现在只有属性流经链并且模型上的其他方法丢失。 当mixin被开发时,选项2似乎是一种反模式。此外,您还需要跟踪全局并更新子项的绑定。

    我是否遗漏了某些问题,或者是否有更简单的解决方案来解决这个问题?

0 个答案:

没有答案