0

在此处输入图像描述

上图代表我正在进行的一个项目。在 3 个字段中,仅手动输入采购价格数据。我使用以下标记和 TS 代码将未偿抵押贷款字段设置为先前提供的数字的百分比:

<input type="number" class="form-control" min='0' id="purchaseValueInput" formControlName="purchase_value" (ngModelChange)='setPercentages()'>

...

setPercentages() {
    this.mortgage = this.analysisForm.value.market.purchase_value * 0.75;
}

我的挑战是我需要为抵押贷款支付领域做类似的事情,但作为未偿抵押贷款价值的百分比。因为该值不是手动提供的,所以 ngModelChange 策略不起作用。

我该如何解决最后一步?

更新

在我的 setPercentages() 函数中,我尝试为抵押付款设置一个变量,但出现以下错误:

指定的值“NaN”无法解析,或超出范围。

我怀疑这是因为该字段被认为是空的,即使在视觉上它有数据。我使用了以下代码:

setPercentages() {
  this.mortgage = this.analysisForm.value.market.purchase_value * 0.75;

  this.mortgagePayments = (this.analysisForm.value.market.outstanding_mortgage * 0.03) / 12;
}

<input type="number" class="form-control" min='0' id="mortgagePaymentValueInput" formControlName="mortgage_payments" [value]="mortgagePayments">
4

2 回答 2

1

您可以尝试将抵押付款绑定到一个成员变量,并且在setPercentages另一个输入的函数中,您还可以通过该变量更新模型。

如果 ngModelChange 由于某种原因不起作用,您可以尝试设置该输入的 value 属性: <input type="text" value="$300"></input>

于 2020-08-16T00:51:40.313 回答
0

我将我的百分比值分配给变量和插值以将变量分配为我的输入字段的值。事实证明这是错误的做法。

起作用的是使用表单patchValue,如下所示:

this.analysisForm.patchValue({
    market: {
        outstanding_mortgage: this.analysisForm.value.market.purchase_value * 0.75,
    }
});
于 2020-08-16T19:06:25.823 回答