【问题标题】:Angular2/Ionic2 where to define global variables?Angular2/Ionic2 在哪里定义全局变量?
【发布时间】:2023-03-02 21:43:01
【问题描述】:

我很难定义一个可在整个应用程序中访问的全局变量。 该应用基于 Ionic2 和 Angular2。

我尝试了很多方法,但都没有奏效。在一些关于 SO 的示例中,我无法理解 js 文件的物理存储位置。

我试过的例子:Example

【问题讨论】:

  • 您给出的示例是如何在打字稿中定义“全局”变量。你在纠结什么?

标签: angular global-variables ionic2


【解决方案1】:

在 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}}

不要将类 Globals 添加为提供者

【讨论】:

  • 请注意,这种方式可以获得 Globals 类的多个实例。最好只在 app.module.ts 提供者中声明一次“全局”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-14
  • 1970-01-01
  • 1970-01-01
  • 2011-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多