如何在不使用每个属性的情况下识别和删除jsonObject空属性

时间:2018-04-25 05:00:05

标签: javascript angularjs

我的要求是

  

默认情况下,提交按钮处于禁用模式,如果用户更改现有状态   表单中的数据然后提交按钮应该改为启用模式   他改变主意并恢复旧数据然后提交   按钮应该更改为禁用模式。

对于这个要求,我已经完成了

的代码更改
  1. 在加载表单数据时,我正在进行临时变量放置 在该临时变量中形成数据。
  2. 用户更改表单中的任何字段我正在使用angular.equals(obj, tempObj)将表单数据与该临时表单数据进行比较 方法
  3. 这些代码更改适用于一种方式,即用户更改表单数据,我正在识别该事件并将表单数据与临时数据进行比较并将按钮更改为启用模式 - >工作

    问题是我的表单包含非必填字段。默认情况下,表单包含那些非必填字段中的空数据。

    第一个用户在非必填字段中输入数据,然后在我的JsonObject中创建一个json键,值对。当我使用equals方法比较两个对象时,它返回false之后我恢复了非必需字段,但创建的json对象属性没有从空值的JsonObject中删除。这是有角度的内在行为。

    任何人都可以建议我如何在我的JsonObject中删除那个空值json键。

    注意:我不会使用每个迭代并找到空的json值并将其从JsonObject中删除,因为我的表单包含40个元素。它将引领我的应用程序的性能。我必须在不同的地方应用相同的行为。

1 个答案:

答案 0 :(得分:0)

您可以_.Omit删除json对象https://lodash.com/docs/4.17.10#omit