说我们有角反应形式:如何获得()的打字稿工作
<form [formGroup]="form">
<input formControlName="username">
<div *ngIf="form.get('username').invalid">Invalid</div>
</form>
和组件:
export class FormClass {
form = new FormGroup({
username: new FormControl('', Validators.required);
)}
}
为了使这条线更短 - <div *ngIf="form.get('username').invalid">Invalid</div>
我们添加一个get方法到组件:
get username() {
return this.form.get('username')
}
所以现在我们能做的 - <div *ngIf="username.invalid">Invalid</div>
我不知道为什么我们不这样做呼叫这种方法吗?我们只是通过它作为一种对象 - 没有()
。我的意思是这个方法是一个函数,函数被调用就像这样username()
。在这种情况下,get()
有点特别吗?对不起我的TS知识...
因为这就是getters/setters如何在JS中工作,请阅读https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get –
这是一个很好的问题,我认为它可以如果你不习惯在其他语言(如Java)中使用它,会令人困惑。有名为getter和setter。我不善于解释,但你可以在这里找到许多很好的答案,只需要寻找获得者和接受者。 – Vega
谢谢大家,我会读一读。和@Maximus - 我以前访问过那个页面,只是阅读/理解文档对我来说还是有点难... –