1

Typescript では、オブジェクトのすべてのプロパティに対して getter/setter をどのように使用しますか? たとえば、次のコードを使用できます。

class Div {
    private _container: HTMLDivElement;
    public get container() {
        return this._container;
    }
    public set container(value) {
        alert("Updated!");
        this._container = value;
    }

    testDiv() {
        this.container = <HTMLDivElement>document.createElement('div');
        this.container.style.width = "100px";
    }
}
var newDiv: Div = new Div();
newDiv.testDiv();

"更新しました!" divが最初に設定されたとき(これは本当にそうあるべきだと思います)、一度だけ警告されますが、「更新されました!」と警告したいです。そのオブジェクトにプロパティを設定している場合でも。これを行う方法はありますか、または何らかの回避策を考え出す必要がありますか?

4

1 に答える 1

0

オブジェクトの状態が変化したときにトリガーされるイベントシステムを作成します。プロパティへの直接アクセスを許可しないでください。必要に応じて状態変更をトリガーするコントローラーを介してすべてのアクティビティをファネルします。

または、すでにこれを行っているフレームワークの使用を検討してください。バックボーン、ノックアウト、Angularjsなど。

于 2013-01-15T03:16:11.850 に答える