在Angular中,如何使自定义组件[(ngModel)]应用了一个简单的标志?

问题描述 投票:0回答:1

在Angular中,如何将模板简单的自定义组件应用于[(ngModel)]?我希望这个[(ngModel)]是一个简单的布尔标志。然后在单击div时更改此ngModel。要添加到现有组件的最小代码是什么?

angular custom-component ngmodel
1个回答
2
投票

我真的不明白[(ngModel)]的必要性如果你想将一个布尔值绑定到组件之外,建议使用Angular双向绑定https://angular.io/guide/template-syntax#two-way-binding---

在您的布尔标志案例中:

@Input()  flag: boolean| string;
@Output() flagChange = new EventEmitter<boolean>();
changeFlag() {
  this.flag = !this.flag;
  this.flagChange.emit(this.flag);
}

在相应的父组件中,您可以使用与[(ngModel)]相同的语法来使用此属性:

[(flag)]

[(ngModel)]是[ngModel]属性和(ngModelChange)事件的糖。

© www.soinside.com 2019 - 2024. All rights reserved.