[Angular] Angular模板总结 快捷表
来源:Angular – 速查表
阅读这个备忘录的方法
テンプレート出力解説テンプレートの書き方です。コンポーネント適用後の出力例です。解説です。
前提 – Chinese paraphrase: 条件。
出力例是以以下组件类为前提的。
export class MyCmpComponent {
firstName: string = "Jane";
myAriaRole: string = "banner";
isDelightful: boolean = true;
mySize: int = 100;
ponyName: string = "Seabiscuit";
employer: Employer;
readRainbow($event: any): void { /* (snip) */ }
}
Angular模板语法
テンプレート出力解説
双方向(ツーウェイ)データバインディングです。
<input [value]="firstName">
<input value="Jane">
value
プロパティに、firstName
式の評価結果をバインドします。<div [attr.role]="myAriaRole">
<div role="banner">
role
属性に、myAriaRole
式の評価結果をバインドします。<div [class.extra-sparkle]="isDelightful">
<div class="extra-sparkle">
extra-sparcle
CSSクラスを付与するかどうかを、isDelightful
式の評価結果が真値になるかどうかにバインドします。<div [style.width.px]="mySize">
<div style="width:100px">
width
プロパティにmySize
式の評価結果をバインドします。単位px
はオプションです。<button (click)="readRainbow($event)">
<button onClick="readRainbow($event)">
クリック時にreadRainbow
メソッドを呼び出します。<div title="Hello {{ponyName}}">
<div title="Hello Seabuscuit">
プロパティに補完文字列をバインドします。 <div [title]="'Hello ' + ponyName">
と一緒です。<p>Hello {{ponyName}}</p>
<p>Hello Seabuscuit</p>
コンテンツを補完文字列にバインドします。<my-cmp [(title)]="name">
双方向(ツーウェイ)データバインディングです。
<my-cmp [title]="name" (titleChange)="name=$event">
と同じです。<video #movieplayer ...><button (click)="movieplayer.play()"></video>
video
要素を格納したmovieplayer
というローカル変数を生成します。ローカル変数は、同じテンプレート中のデータバインディングやイベントバインディング式で使用できます。<p *myUnless="myExpression">...</p>
<ng-template [myUnless]="myExpression"><p>...</p></ng-template>
と同じです。<p>Card No.: {{cardNumber | myCardNumberFormatter}}</p>
1myCardNumberFormatter
フィルタを通して出力します。<p>Employer: {{employer?.companyName}}</p>
employer
がundefined
でもエラーにならないようにします。因为不知道Markdown的转义字符,所以用全角的管道符进行了编写。