Backbone 一个监听着 Model 的 View, 如果同时有 Controller 的身份, 怎样处理循环修改?
场景是这样的:
一个 Model 被两个 View 使用, 两边的 View 都能修改, 这样另一个 View 就要同步数据.
为了减少逻辑的繁琐, 我通过
change:text
来完成两边的渲染.
但问题随之而来, 当前的
input
修改之后, 监听到
change
又会重新渲染.
如果是简单点的状况, 我会考虑用
silent:true
绕开, 但现在是需要事件的.
请问有没有好的方案来应对问题? 在 Backbone 里通常怎样处理的?
更新:
我当前的方案是在
.set
和回调函数的
options
里加上
triggerBy
属性,
通过判断 triggerBy 来避免被自己的修改触发渲染
http://backbonejs.org/docs/backbone.html#section-47
黄昏的铃音
11 years, 11 months ago