角/离子输入,空值更改为0

时间:2018-10-05 08:23:51

标签: angular ionic-framework null ngmodel

一个问题。我通过Ionic(Angular)项目管理足球比分。

我的游戏模型:

opponent: "TSV Marktbergel"
scoreOpponent: null
scoreSvl: null

函数save():

saveGame() {
  console.log(this.game);
}

我的模板:

<ion-item>
    <ion-input type="text" [(ngModel)]="game.opponent" class="inputfield"> 
</ion-input>
<ion-item>
    <ion-input [(ngModel)]="game.scoreSvl" ></ion-input>
</ion-item>
<ion-item>
    <ion-input [(ngModel)]="game.scoreOpponent" ></ion-input>
</ion-item>
<ion-item>
    <button ion-button block color="alert" large 
     (click)="saveGame()">Speichern</button>
</ion-item>

当我现在仅更改对手名称(例如TSV Marktbergel2)且得分输入未更改时->模型将空值更改为0。

更改名称后的型号:

opponent: "TSV Marktbergel2"
scoreOpponent: 0
scoreSvl: 0

我该怎么办,将空值不转换为0?

1 个答案:

答案 0 :(得分:0)

我的错。要获取输入值(=字符串)为数字,我已经在save方法中实现了转换器:

if(this.game.scoreSvl != null || this.game.scoreSvl != 0) {
            this.game.scoreSvl = this.game.scoreSvl * 1;
            this.game.scoreOpponent = this.game.scoreOpponent * 1;
        }

这将空值更改为0。 我已将其更改为:

if(this.game.scoreSvl !== null) {
            this.game.scoreSvl = this.game.scoreSvl * 1;
            this.game.scoreOpponent = this.game.scoreOpponent * 1;
        }

成功了,谢谢