2017-02-26 8 views
2

私はアプリケーション全体でアクセスできるようにグローバル変数を定義するのに苦労しています。 アプリはIonic2とAngular2に基づいています。Angular2/Ionic2グローバル変数を定義する場所はどこですか?

私は多くのアプローチを試みましたが、うまくいきませんでした。 SOのいくつかの例では、jsファイルを物理的に格納する場所を理解できません。

Exampeは、私が試した:Example

+0

としてクラスグローバルを追加しないでください{{globals.VARIABLENAME}}

とHTMLであなたのグローバルを使用することができます。あなたは何と苦闘していますか? –

答えて

2

アプリ/ globals.tsでグローバルクラスを作成します。あなたのコンポーネントで

import { Injectable } from '@angular/core'; 
 

 
Injectable() 
 
export class Globals{ 
 
    VAR1 = 'value1'; 
 
    VAR2 = 'value2'; 
 
}

import { Globals } from './globals'; 
 

 
@Component({ 
 
    selector: 'my-app', 
 
    providers: [ Globals ], 
 
    template: `<h1>My Component {{globals.VAR1}}<h1/>` 
 
}) 
 
export class AppComponent { 
 
    constructor(private globals: Globals){ 
 
    } 
 
}

あなたが与えている例では、あなたはtypescriptですで「グローバル」変数を定義する方法ですプロバイダ

+0

このようにして、Globalsクラスの複数のインスタンスを取得することができます。 app.module.tsプロバイダで「グローバル」を一度だけ宣言する方が良いでしょう – mwager

関連する問題