typescript – 在Angular 2中定义全局常量

前端之家收集整理的这篇文章主要介绍了typescript – 在Angular 2中定义全局常量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在Angular1.x中,你可以这样定义常量:
angular.module('mainApp.config',[])
.constant('API_ENDPOINT','http://127.0.0.1:6666/api/')

在Angular2(带打字稿)中是什么等价的?
我只是不想重复的API基本url一遍又一遍在我所有的服务。

下面的更改为我在Angular 2最终版本工作:
export class AppSettings {
   public static API_ENDPOINT='http://127.0.0.1:6666/api/';
}

然后在服务:

import {Http} from 'angular2/http';
import {Message} from '../models/message';
import {Injectable} from 'angular2/core';
import {Observable} from 'rxjs/Observable';
import {AppSettings} from '../appSettings';
import 'rxjs/add/operator/map';

@Injectable()
export class MessageService {

    constructor(private http: Http) { }

    getMessages(): Observable<Message[]> {
        return this.http.get(AppSettings.API_ENDPOINT+'/messages')
            .map(response => response.json())
            .map((messages: Object[]) => {
                return messages.map(message => this.parseData(message));
            });
    }

    private parseData(data): Message {
        return new Message(data);
    }
}

猜你在找的Angularjs相关文章