Angular 入力項目
今回はAngular2の入力項目をやります。入力した文字をそのまま画面に表示してみます。Angular CLIの作成したものをベースに一部を変更するので、実際動かす場合は、Angular CLIのソースも作成して下さい。
テキスト入力イベント
Angular CLIでプロジェクト作成後、src\app\app.component.tsを以下のように変更します。src\app\app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
template:
`<input #hello (keyup)="keyupEvent(hello.value)" placeholder="ここに入力" />
<h1>{{message}}</h1>`
})
export class AppComponent {
message = "ここに表示されます。";
keyupEvent(value: string) {
this.message = value;
}
}
#helloをテンプレート参照変数と言います。
上記変更後、プロジェクトフォルダで以下を実行すると動作確認できます。
ng serve --open
実行イメージ
①画面表示時
②文字入力後
イベントは色々ありますが、例えば以下のようなものがあります。
イベント
イベント | 動作 |
---|---|
(click) | クリックされた |
(keyup) | キーボタンが押された |
(keyup.enter) | エンターキーボタンが押された |
(blur) | フォーカスが外された |
ボタンイベント
src\app\app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
template:
`<input #hello placeholder="ここに何か入力して下さい。" />
<button (click)="clickEvent(hello.value)">表示</button>
<h1>{{message}}</h1>`
})
export class AppComponent {
message = "ここに表示されます。";
clickEvent(value: string) {
this.message = value;
}
}
実行イメージ
リスト作成
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
template:
`
<select #cmb (change)="onChange(cmb.value)">
<option *ngFor="let str of ary" value={{str}}>test_{{str}}</option>
</select>
<h1>{{message}}</h1>
`
})
export class AppComponent {
message = "ここに表示されます。";
ary = ["aaa", "bbb", "ccc"];
onChange(value: string) {
this.message = value;
}
}
実行イメージ
ページのトップへ戻る