魔王のサタンぶろぐ

Angular2 "enum"をComponentの中で使いたい

はじめに

Angular2で関数に引数として数値を渡すとき、

<button (click)="method(1)"></button>

とか書いたら読みづらくないですか???

そこでenum

<button (click)="method(EnumType['button1'])"></button>

ただ単にenumの定義がちょっとわけわからなかったんでまとめておきます。

ま、コードを見ていきましょう。 と、行っても部分的コードになるので、個々で補完お願いします。

コード

<app.component.ts>

import { ~ } from '~';
...

enum EnumType {
    button1 = 1,
    button2 = 2,
    button3 = 3,
    button4 = 4,
}

@Component({
    selector: 'enumTest',
    template: `
    <button (click)="method(EnumType['button1'])"></button>
    `
})

export class appComponent{
    //変数フィールド
    EnumType: typeof EnumType = EnumType;

    constructor(){
    //コンストラクタ
    }

    public method(index: number): void{
        //実装
    }
}

っへ~~~~って感じですね。

ばいん