Collection#_removeModels 在 'remove' 事件之后被调用
作者: graphographer创建于 2019年4月26日更新于 2023年7月20日
标签question
我认为应该是反过来的,因为我有一个用例,我想检测当模型从集合中移除时,对其进行一些操作(例如在销毁后重置其 ID),然后将其重新添加到集合中。 目前,在移除或销毁事件期间将模型重新添加到集合中似乎会导致意外行为。我认为它处于一种奇怪的中间状态,即正处于与集合脱离的过程的中间阶段。因此,例如,它将没有集合属性,并且我无法在事件处理程序中手动添加此属性。 使用 _.defer 似乎可以缓解所有问题(尽管这不是我提出的修复建议。 修复只是将事件触发器放置在 _removeModels 方法调用之后…我非常确定这将有效)。 如果我的用例与 RESTful 原则并不相悖,我还可能建议在模型被销毁时仍将其保留在集合中,例如 {remove: false}。如果这个问题是完全奇怪的概念,我对我的用例的其他模式建议持开放态度,但我不会详细说明我的用例,直到我获得了关于此问题的反馈。
内容来源: jashkenas/backbone