Also ich probiere einige Angular 2 aus und ich mag es so weit. Aber ich brauche Hilfe, um diese neue Landschaft zu navigieren.Angular 2, setze Wert von Texteingaben in Form
Ich habe ein Formular, um eine Benutzerdetails und eine Liste auf der Seite mit allen meinen Benutzern zu bearbeiten. Wenn ich auf einen der Benutzer in der Liste klicke, möchte ich mein Edit-User-Formular mit den Benutzerdetails füllen (setEditForm (user)).
Ich habe es funktioniert und alle. Aber ich muss sagen, es ist nicht richtig, ngControl und ngModel gleichzeitig zu verwenden. Aber vielleicht ist es ...
Ist dies der richtige Weg, um dies zu tun oder habe ich nur etwas Glück dabei, es funktioniert?
@Component({
template: `
<form (ngSubmit)="editUser(f.value)" #f="ngForm">
<input ngControl="nameInp" [ngModel]="selectedUser.name" type="text">
<input ngControl="ageInp" [ngModel]="selectedUser.age" type="text">
<input ngControl="cityInp" [ngModel]="selectedUser.city" type="text">
<button type="submit">Save</button>
</form>
)}
export class AdminComponent {
selectedUser:UserModel;
constructor() {
this.selectedUser = new UserModel;
}
setEditForm(user:UserModel) {
this.selectedUser = user;
}
editUser(form:any) {
// Update DB with values
console.log(form['nameInp']);
console.log(form['ageInp']);
console.log(form['cityInp']);
}
}