2017-03-02 7 views

答えて

0

それは装飾されたクラス

Aデコレータは、クラス宣言、メソッド、アクセサ、プロパティ、またはパラメータに取り付けることができる宣言の特別な種類です。デコレータは、@expressionという形式を使用します。ここで、expressionは、デコレーションされた宣言に関する情報とともに実行時に呼び出される関数に評価されなければなりません。

https://www.typescriptlang.org/docs/handbook/decorators.html

+0

私は考えを得る。しかし、「目標」の議論はどうですか、関数がその価値をどのように得ていますか? – user3646717

+0

Typescriptはjavascriptにコンパイルされます。コンパイルされたコードは、装飾されたクラスを持つConsoleメソッドから返された関数を呼び出します。 –

+0

私はそれを持って、そのデコレータ工場、ありがとうございます! – user3646717

0

これは、クラスデコレータの内部機能です。 ES2016デコレータはプロパティ記述子とクラスで動作します。それらは自動的に渡されるプロパティ名とターゲットオブジェクトを自動的に受け取ります。記述子にアクセスすることで、デコレータはゲッターを使用するためにプロパティを変更するなどの作業を行うことができ、プロパティの最初のアクセス時に自動的にメソッドを現在のインスタンスにバインドするなどの煩雑さがあります。

あなたは、さらに情報を読むことができます:https://medium.com/google-developers/exploring-es7-decorators-76ecb65fb841#.qj8979jae

+0

はまあ速いあなたは、私がsuperheroe関数は、引数「真」渡されたから、その値を取得している類似の挙動を発見して、ウェブサイトをチェックするをご参照ください。しかし、返された関数はどのように 'target'の値を取得しますか?私はそれが目標の代わりに何かと呼ばれることができると理解しています。しかしどうですか? – user3646717

関連する問題