class - 在 Angular 2 和 Ionic 2 中访问整个应用程序的关键数据

标签 class typescript angular ionic2

在 Angular 2 和 Ionic 2 - typescript 中存储我可以在整个应用程序中访问的数据的最佳方式是什么。

对于用户信息,我最初的想法是只在每个需要的文件中导入 User 类,但由于我只需要一个用户 ID,我认为最好有某种配置文件,也许是应用类 - 我还可以存储环境信息和 url 等。

我实际上不知道围绕此的最佳实践是什么,也找不到太多关于该主题的信息。

最佳答案

一种方法是创建具有您需要的所有属性的类,并在您引导应用程序时将其配置为单例。

服务:

import {Injectable} from 'angular2/angular2';


@Injectable()
export class Config {

  constructor() {}

  public get USERID(): string {
      return "XCAMPLISHIOUS";
  }

}

引导:

import {bootstrap} from 'angular2/angular2';
import {TaciIlieApp} from './app/taci-ilie';
import {Config} from './app/services/config/config';

bootstrap(TaciIlieApp, [Config]); // configuring the Config provider here will ensure a single instance is created

用法:

import {Component, Inject} from 'angular2/angular2';

import {Config} from '../../services/config/config';

@Component({
  selector: 'game',
  templateUrl: 'app/components/game/game.html',
  styleUrls: ['app/components/game/game.css'],
  providers: [],
  directives: [],
})
export class Game {


  constructor(private config: Config) {
      console.log(this.config.USERID);
  }

关于class - 在 Angular 2 和 Ionic 2 中访问整个应用程序的关键数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34815478/

相关文章:

c++ - 继承和派生类

c++ - 即使声明为全局,全局友元函数也无法访问私有(private)范围

javascript - 使用依赖注入(inject)的 React/TypeScript 动态 Switch 语句

angular - 如何使用 forFeature 而不用于延迟加载模块?

css - Angular2 动画在长列表上很慢

c - C怎么不是面向对象的?

java - 为 Android 应用程序创建类图

javascript - 文件末尾出现 TS1128 'Declaration or statement expected' 错误,即使代码看起来不错,该错误也不会消失

angular - 在 asp.net 5 Razor View 中使用 angular2

angular - Uncaught SyntaxError-意外 token +另外1个