Ember {{#each}} 显示之前删除的记录
Ember {{#each}} shows previously deleted records
我一直在与我正在开发的应用程序中的错误作斗争。我创建了一个 JSBin 来说明它,这些是你应该采取的重现它的步骤:
- 单击显示“新规则集”的 link“
”
您将看到规则集生成器模板显示该框。请注意,我已经包含了 id
、isDeleted
、isDirty
和 isSaving
属性,以便轻松查看该记录的状态。我还显示了 hasMany
关系的长度。
- 单击“删除”link 以销毁该记录
不出所料,规则集框消失,长度表示有0个规则集。我都在使用父模型的 removeObject
和我要删除的对象上的 destroyRecord
,尽管我认为 Ember 数据应该为我解决这个问题。
请注意,在控制台中我正在记录 firstObject
,即使 length
为 0,它也很奇怪地出现了。我不知道这是否与什么有关发生在下一步。
- 再次单击“新规则集”link
您会看到显示了两个框。第一个是您之前删除的规则集。请注意它是如何 isDeleted
,而不是 isDirty
而不是 isSaving
,如 here 所示,这意味着更改已持续。
显然再次从 isDeleted
记录中点击“删除”会在控制台中抛出错误:
Uncaught Error: Attempted to handle event deleteRecord
on while in state root.deleted.saved.
我错过了什么? {{#each}}
应该显示 isDeleted
的记录吗?
感谢您的帮助!
我在 Ember 数据存储库中提交了一个问题,结果已经有人报告了。
请查看 #2666 以获取后续信息和一些暂时解决问题的方法。
我看到的最新一个是由 dwickern 发布的,它涉及使用计算 属性 而不是
comments: Ember.computed.filterBy('model.comments', 'isDeleted', false)
显然 ember-data.1.0.0.beta-12 没有问题并且已经有一个 Pull Request #2722一个可能的解决方案。
我一直在与我正在开发的应用程序中的错误作斗争。我创建了一个 JSBin 来说明它,这些是你应该采取的重现它的步骤:
- 单击显示“新规则集”的 link“ ”
您将看到规则集生成器模板显示该框。请注意,我已经包含了 id
、isDeleted
、isDirty
和 isSaving
属性,以便轻松查看该记录的状态。我还显示了 hasMany
关系的长度。
- 单击“删除”link 以销毁该记录
不出所料,规则集框消失,长度表示有0个规则集。我都在使用父模型的 removeObject
和我要删除的对象上的 destroyRecord
,尽管我认为 Ember 数据应该为我解决这个问题。
请注意,在控制台中我正在记录 firstObject
,即使 length
为 0,它也很奇怪地出现了。我不知道这是否与什么有关发生在下一步。
- 再次单击“新规则集”link
您会看到显示了两个框。第一个是您之前删除的规则集。请注意它是如何 isDeleted
,而不是 isDirty
而不是 isSaving
,如 here 所示,这意味着更改已持续。
显然再次从 isDeleted
记录中点击“删除”会在控制台中抛出错误:
Uncaught Error: Attempted to handle event
deleteRecord
on while in state root.deleted.saved.
我错过了什么? {{#each}}
应该显示 isDeleted
的记录吗?
感谢您的帮助!
我在 Ember 数据存储库中提交了一个问题,结果已经有人报告了。
请查看 #2666 以获取后续信息和一些暂时解决问题的方法。 我看到的最新一个是由 dwickern 发布的,它涉及使用计算 属性 而不是
comments: Ember.computed.filterBy('model.comments', 'isDeleted', false)
显然 ember-data.1.0.0.beta-12 没有问题并且已经有一个 Pull Request #2722一个可能的解决方案。