自动清零我有我的模板保存按钮激活时模型hasDirtyAttributesember.js手动设置hasDirtyAttributes不保存
的hasDirtyAttributes标志似乎并没有被设置时,相关模型的引用变化。
例
我有一个下拉菜单,允许
如果我改变任何直接的属性(如名称),一切正常采摘称为接触的相关模型,并保存按钮激活。
当我更改联系人时,它不会,我假设这是设计,所以我在更改操作被触发时设置了标志。
我在我的路线行动,像这样设置的:
actions:{
updateProductionContact: function(contact){
this.set('currentModel.customer.hasDirtyAttributes',true);
this.set('currentModel.customer.production_contact',contact);
},
}
现在它再次工作。当我更换联系人时,保存按钮亮起。
但是,当我现在单击保存时,hasDirtyAttributes标志保持为真(按钮保持活动状态),而之前它被清除,直到做出其他更改。
我希望框架在成功保存后自动重新设置标志,就像以前一样。我当然可以在按钮的保存动作上重新设置标志。
感觉就像我在解决问题的方法一样,也许有不应该手动设置的DirtyAttributes,或者我应该使用不同的脏度指标。
我的问题:如何正确处理这个问题?
是的,你应该使用'hasDirtyAttributes'根据持久化记录指南检查一个值是否脏(https://guides.emberjs.com/v2.13.0/models/creating-updating-and-deleting-records /#toc_persisting-记录)。但是,我不确定为什么在保存后脏仍然存在。您可能需要在余烬松弛 一般频道中寻求更多帮助。 – AlexMA