Как лучше всего использовать двустороннюю привязку (синтаксис-сахар) в Angular 2 с оператором безопасной навигации. Я пробовал следующее.
<input [(ngModel)]="x?.y?.z">
Но это не поддерживается.
Есть ли способ использовать sth. как это?
Как лучше всего использовать двустороннюю привязку (синтаксис-сахар) в Angular 2 с оператором безопасной навигации. Я пробовал следующее.
<input [(ngModel)]="x?.y?.z">
Но это не поддерживается.
Есть ли способ использовать sth. как это?
Вы можете разделить привязку вверх и вниз, например
<input [ngModel]="x?.y?.z" (ngModelChange)="x?.y?.z ? x.y.z = $event : null">
x?.y?.z = 'foo'
недопустимо).
- person Günter Zöchbauer; 17.10.2018
<input [ngModel]="x?.y?.z" (keyup)="changeMe($event.target.value)"> {{x?.y?.z}}
export class ParentCmp {
x={y:{z:"a"}}
changeMe(val)
{
console.log(val);
this.x.y.z=val;
}
}
http://plnkr.co/edit/ZBeSPqf4HUwLOeWSNfZJ?p=preview
Angular не поддерживает оператора безопасной навигации в двусторонних привязках. Вместо этого вы можете сделать так:
<!-- <input [(ngModel)]="x?.y"> -->
<input [(ngModel)]="x && x.y">
(проверено с Angular 9)