3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Angular tips(2)

Last updated at Posted at 2017-10-12

Angular 復習(Angular4~)

テンプレートシンタックス

1. <input [value]="expression">

inputのvalueプロパティをexpressionでバインディングする。

2. <div [attr.role]="expression">

divのrole属性をexpressionでバインディングする。
※role属性とは、HTML5で追加された属性。

3. <div [class.extra-sparkle]="expression">

cssクラスextra-sparkleをexpressionでバインディングし、有効にするかを決定する。
ngClassに似ている。

4. <div [style.width.px]="expression">

cssスタイルをexpressionでバインディングする。

5. <button (click)="readRainbow($event)">

クリックボタンが押されたときに、メソッドが呼ばれる。
イベントの種類は、以下のリンクを参照。
https://developer.mozilla.org/en-US/docs/Web/Events

6. <div title="Hello {{ponyName}}">

titleプロパティに、{{}}で補完構文を加える。
<div [title]="'Hello' + ponyName"と同じ。

7. <p>Hello {{ponyName}}</p>

補完構文を加える。

8. <my-cmp [(title)]="name">

双方向に、titleプロパティと、nameをバインディングする。
<my-cmp [title]="name" (titlechange)="name=$event">と同じ。

9. <video #movieplayer ...><button (click)="movieplayer.play()"></video>

movieplayerというローカル変数を作成し、イベントバインディング、データバインディング内でvideo要素の実体にアクセスできるようにする。

10. <p *myUnless="myExpression">...</p>

アスタリスクをつけることで、要素を組込テンプレートに置き換えます。
<ng-template [myUnless]="myExpression"><p>...</p></ng-template>と同じです。
ng-templateは、実体を持たない要素です。また、通常は表示されません。

11. <p>Card No.: {{cardNumber | myCardNumberFormatter}}</p>

補完文字列を指定したpipeでフォーマットします。

12. <p>Employer: {{employer?.companyName}}</p>

クエスチョンマークをつけると、employerオブジェクトが未定義(companyNameがない)の場合は、無視される。
エラーにならないと。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?