【问题标题】:Save only modified elements of an array [closed]仅保存数组的修改元素[关闭]
【发布时间】:2021-10-03 14:07:20
【问题描述】:

我正在使用 Angular,后端使用 C#,使用 Oracle 使用数据库。该项目是针对一家公司的,在网格中他们给我留下了 120 多条记录。在这些网格中,用户可以编辑每条记录并通过选择“保存”按钮发送所有记录(已修改的和未修改的),这就是我需要您帮助的地方。你怎么知道哪些记录发生了变化?我的想法是复制到达的数据,最后比较哪些已更改并将新列表发送到数据库(仅包含更改的记录)。另一个想法是,每次有人进行更改时,都会将其添加到另一个列表中,但问题是如何识别它何时更改以及何时更改并返回到原来的状态......有什么想法吗?

【问题讨论】:

  • 您使用的是角形吗?你能不能也显示一些代码。 Angular 表单 API 具有脏/原始等属性,可以告诉您哪些字段被修改。

标签: javascript arrays angularjs angular


【解决方案1】:

有多种方法可以跟踪哪些元素已被修改:

  • 用对象定义一个接口一个“isModified”标志。在修改每个项目时,将该标志设置为 true。
  • 保留一个单独的修改对象列表(如您所述)
  • 保留已修改对象的 Id 列表

关于如何确定对象是否已更改,这将取决于您如何处理编辑。如果您使用的是 Angular Forms(如上面 @nobalG 所述),那么它会告诉您数据已被修改。

如果没有,同样取决于您处理编辑的方式,您可能还有其他可以跟踪的 changed 事件。

如果没有一些代码详细说明您如何处理编辑,则无法获得更多详细信息。

【讨论】:

    猜你喜欢
    • 2021-06-27
    • 1970-01-01
    • 2013-07-11
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    • 2017-01-04
    • 2014-11-01
    • 2012-08-18
    相关资源
    最近更新 更多