2017-02-26 58 views
2

我很難定義一個全局變量,以便在整個應用程序中訪問。 該應用程序基於Ionic2和Angular2。Angular2/Ionic2在哪裏定義全局變量?

我試過很多方法,但都沒有工作。在一些例子中,我不明白在哪裏存儲物理js文件。

Exampe我想:Example

+0

你給的例子是你將如何定義打字稿一個「全局」變量。你在掙扎什麼? –

回答

2

在app/globals.ts創建Globals類:

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){ 
 
    } 
 
}

您可以在HTML中使用你的全局與{{globals.VARIABLENAME}}

不要添加類全局的提供商

+0

請注意,這種方式可以獲得Globals類的多個實例。最好只在app.module.ts提供程序中聲明「Globals」 – mwager