json - Angular 2 Kaste FormGroup-verdi til grensesnitt


Jeg prøver å kaste innholdet av verdien til mitt FormGroup til et grensesnitt som jeg vil bruke for å poste noe til min Web Api.

Mitt grensesnitt ser slik ut:

export interface MoneyItemI {
  Description: string;
  Amount: number;
}

Mine innsendingmetoder ser slik ut:

onSubmit() {
    let jsonString = JSON.stringify(this.itemForm.value);
    let mi = <MoneyItemI>JSON.parse(jsonString);
}

Jeg kan se at jeg får et objekt opprettet med JSON.parse, men dessverre ser det ikke ut som et gyldig MoneyItemI-objekt for meg.

Egenskapen 'Amount' er for eksempel ikke et tall. Den blir tildelt som en tekststreng.

Hvordan kan jeg lage et gyldig grensesnitt med verdien til min FormGroup?

Svar #1

Har this.itemForm.value de riktige Amount- og Description-egenskapene før du kaller JSON.stringify(this.itemForm.value)?

Hvis det er slik, bør du kunne bare gjøre:

let mi = <MoneyItemI>this.itemForm.value;

Relaterte artikler