输入更改时为角度5

时间:2018-07-02 11:41:55

标签: angular forms

我必须创建一个表格来编辑资产负债表。它背后的模型是一个至少由3级嵌套对象组成的对象。例如:

financialData: {
  assets: {
    total: 0,
    currentAssests: {total: 0, detail: 0, otherDetail: 0, ...},
    nonCurrentAssets: {total: 0, detail: 0, otherDetail: 0, ...},
    ...
  },
  liabilities: {...}
}

输入发生变化时,如何计算不同的总计字段?所有输入都绑定到模型属性。我尝试使用(ngModelChange)="computeTotals()"指令,但是在实际更改模型之前调用了该指令,从而使计算错误。 我尝试过OnChanges,但模型本身并未更改,仅嵌套了属性。

我最近从事的工作是使用DoCheck,但它被称为很多。而且,如果我想使用this.differ = differs.find({}).create()进行过滤,则需要为所有嵌套对象创建一个不同的对象。

最简单的方法是确保在更改一个输入时计算每个总数?

我的表格相当大,大约30个字段,总共10个字段。我真的不想为每个输入都使用专用的方法,并且希望能够轻松维护表单。

0 个答案:

没有答案