対応するクラスの角成分があるとします。角:コンポーネントテンプレート内の外部静的クラスにアクセス
@Component({
selector: "test",
template: ` whatever `
})
export class TestComponent
{}
次に、静的メンバー(クラスにバインドされ、インスタンスにはバインドされていません)を持つクラスがあります。
export class Config
{
public static foo() : string
{ return "blabla"; }
}
コンポーネントのテンプレートにConfig.fooを呼び出す方法はありますか?
template: ` {{ Config.foo() }} `
これをTestComponent内にラップして、それを私のコンポーネントで呼び出すと機能します。
template: `{{ myfoo() }}`
...
export class TestComponent
{
myfoo()
{ return Config.foo(); }
}
しかし、それは私が欲しいものではありません。
Configはグローバル設定情報を保持する必要があり、多くのコンポーネントに情報をラップしたくありません。
もう少しエレガントな方法がありますか?私は注射(シングルトン)について考えましたが、ステートレスな定数情報の方が静的な方がより好きです。
ありがとうございます!
あなたは「グローバル」サービスを(使用することができますメインモジュールで提供されています)、それを参照する変数としてコンポーネント間で変数を渡します。 したがって、コンストラクタでpublicプロパティとしてサービスを挿入し、次に '{{myServiceInstance.myPropOrFnCall}}' –