显示NaN输出的Js表达式

时间:2019-04-03 07:06:16

标签: javascript angular

通过“双向”绑定将数据从我的 HTML 文件传输到我的 TS 文件。

单个元素显示正确的输出,但表达式显示输出NaN。

我的 HTML 代码。

<div id="que1">
    <p>What is your estimated savings?</p>
    <form novalidate [formGroup]="quesForm">
        <input ref-filter type="number" formControlName="estimatedsavings" [(ngModel)]="estimatedSavings">
        <button type="submit" (click)="onSubmitQ1()" [disabled]="!filter.value">Submit</button>
    </form>
</div>
<div id="que2">
    <p>What is your combined family income?</p>
    <form novalidate [formGroup]="quesForm">
        <input ref-filtert type="number" formControlName="familyincome" [(ngModel)]="familyIncome">
        <button type="submit" (click)="onSubmitQ4()" [disabled]="!filtert.value">Submit</button>
    </form>
</div>

我的 TS 文件

quesForm: FormGroup;
estimatedSavings:number;
familyIncome:number;

totalSavings:number = (this.estimatedSavings - this.familyIncome); 

onSubmitQ4 = function() {
    console.log(this.childrengoingtoCollege);
    console.log(this.totalSavings);
    console.log(typeof(this.totalSavings));
}

3 个答案:

答案 0 :(得分:1)

FtpWebRequest request = (FtpWebRequest)WebRequest.Create(sftpServer + result); request.Credentials = new NetworkCredential(sftpUser, strFTPPassword); request.Method = WebRequestMethods.Ftp.UploadFile; using (Stream fileStream = File.OpenRead(archiveFolder.Replace("//", "/") + @"/" + result)) using (Stream ftpStream = request.GetRequestStream()) { fileStream.CopyTo(ftpStream); } 在您的代码中是通过组件的初始化计算一次的。此刻totalSavingsestimatedSavingsfamilyIncome。您可以通过以下方式设置默认值并使用getter:

.ts文件:

undefined

答案 1 :(得分:0)

我不知道属性after_validation :geocode的来源,但是在此代码示例中,该属性未设置为NaN。 childrengoingtoCollage仅在初始化时(其中totalSavingsestimatedSavings仍为familyIncome时才计算)。这就是为什么它生成undefined的原因。如果在文本框中键入内容,它将与后台变量同步,但是NaN的计算不会再次执行。

答案 2 :(得分:0)

您尚未初始化变量。为这些设置默认值 familyIncome:数字= 0 totalSavings:number = 0