Haben Sie ein Problem mit ngModel in angular 2. Haben Sie eine Aufgabe, ein paar Eingaben von einem Array in der Komponentenklasse auszugeben. Es wurde eine Möglichkeit gefunden, dass ngModel seinen Wert aus dem [name] -Attribut nimmt, ohne ngModel in [()] zu umfassen. Und ich frage mich, ob es eine Möglichkeit gibt, diesen Eingaben einen Standardwert zuzuweisen.Einstellung ngModel Standardwert angular 2
personal-details.component.ts:
import {
Component,
} from '@angular/core';
import { Input }from './Input'
@Component({
selector: 'personal-details',
styleUrls: ['personal-details.component.sass'],
templateUrl: 'personal-details.component.html'
})
export class PersonalDetailsComponent {
title: string;
inputs: Input[] = [
new Input('Name', 'text', 'Name', true, true),
new Input('Surname', 'text', 'Surname', true, true),
new Input('Mobile phone Number', 'text', 'phone', true, true),
new Input('Date of Birth', 'text', 'birthday', false, true),
new Input('Title', 'text', 'title', false, false),
new Input('Title after name', 'text', 'title-after-name', false, false),
new Input('Personal number', 'text', 'personal-number', false, false),
new Input('National ID/Passport number', 'text', 'personal-id', false, true),
];
save = function (form) {
console.log(form);
}
constructor(){
this.title = 'someName';
}
}
Hier `s meine Vorlage:
<h4 class="profile__title">Personal Details</h4>
<form #personalDetails="ngForm" (ngSubmit)="save(personalDetails.value)">
<div layout="row" flex-wrap>
<div class="profile__input-wrapper" *ngFor="let input of inputs" flex="33">
<md-input-container class="profile__input-container">
<input md-input
[placeholder]="input.placeholder"
[type]="input.type"
[name]="input.name"
[disabled]="input.isDisabled"
[required]="input.isRequired"
ngModel>
</md-input-container>
</div>
</div>
<profile-footer ></profile-footer>
</form>
versuchten einige andere Ansätze sie mit ngFor aufzulisten, ohne Erfolg.
Danke für die Antwort! [ngValue] gibt einen Syntaxfehler zurück. [Wert] scheint gültig zu sein, zeigt aber kein Ergebnis in der tatsächlichen Ansicht. Obwohl ng-reflect-value = "1" in DOM erschienen ist. –