Singleton在混合angular1和angular2应用程序中共享服务

时间:2016-11-08 12:16:07

标签: angularjs angular typescript

是否可以在混合角度应用中使用单例Angular2服务?

即使我在upgradeAdapter.downgradeNg2Provider(Ng2Service )顶部providers: [ Ng2Service ],我的服务NgModule也会创建一个不同的实例:

Angular2服务:

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

@Injectable()
export class Ng2Service {

    private value: any;

    constructor() {
        console.log('constructor Ng2Service!');
    }

    setValue(value: any): void {
        this.value= value;
    }

    getValue(): any {
        return this.value;
    }
}

该服务被注入Angular1并且它可以工作,但'构造函数Ng2Service!' 被调用两次,并且当使用虚拟方法setValue时Angular1然后从Angular2尝试getValue,值为 null ,但是从Angular1调用getValue会返回正确的值。

0 个答案:

没有答案