如何在角$资源中维护原始/脏缓存?

时间:2014-02-23 10:03:34

标签: angularjs

假设我有一个由$ resource给出的模型。我想维护一个已更改的缓存而不是,所以我可以:

  • 轻松恢复到原始模式(放弃更改)
  • 仅发送已更改的项目(例如,使用PATCH

这里有一点讨论:Partial Updates (aka PATCH) using a $resource based service?

很容易将$resource扩展到其他方法,例如$patchgetDirty()getChanged()。但为了实现这一点,我需要在加载时捕获原始字段,因此我知道它们的清洁状态。

如何捕获原始加载的字段?

我的意图是把它存放在对象本身的某个地方。

也欢迎更好的想法。

1 个答案:

答案 0 :(得分:1)

你可以在这里使用两种方法。

  1. 使用transformResponse的{​​{1}}(请参阅docs),以便在返回的对象上设置自定义跟踪变量。

  2. $resource / $pristine跟踪机制已在ngFormController中实施,因此您应该真正使用它。