我对Angular中的属性使用括号和括号感到有点困惑。
<form [formGroup]="vform" (ngSubmit)="onSubmit(vform.value)">
<input type="text" name="uname" placeholder="User Name" formControlName="uname">
<input type="text" name="fname" placeholder="Full Name" formControlName="fname">
<input type="submit" [disabled]="!vform.valid" value="Submit">
</form>
答案 0 :(得分:2)
无论您将属性传递给组件/元素,都可以使用括号:
说我将size="20"
传递给div元素
<div size="20"></div> // passing a value , not a VARIABLE
<div [size]="sizeVariable"></div> // passing a variable to be bound to
为了给你一个更广阔的视野,想象一下当使用普通的style
标签时,你将一些属性(在这种情况下是颜色和......等样式)传递给元素:
<div style="color:red">
当使用parantesese时,您正在订阅该元素中出现的事件:
<div (click)="doSomething()">
类似于:
<div onClick="doSomething">
与
有些相似 $('#yourElement').on('click',doSomething)
答案 1 :(得分:2)
使用括号绑定到(click)="clickHandler()"
使用方括号绑定[disabled]="true"
使用两者(在框中称为足球)进行双向绑定,例如[(ngModel)]="attr"
答案 2 :(得分:1)
[]
用于绑定值。它允许传递对象。
<div [allowed]="allowed"></div>
()
用于绑定在触发DOM事件时调用的事件处理程序
<date-comp [title]="childTitle" (notify)="onNotification($event)"></date-comp>
参考 What is the difference between parentheses, brackets and asterisks in Angular2?
答案 3 :(得分:0)
Parantheses用于函数调用,而括号用于传递或设置属性。欲了解更多信息,请访问角度文档@ www.angular.io