Angular2 - Compartilhe dados entre componentes usando serviços

Eu tenho um objeto que quero compartilhar entre meus componentes em um aplicativo Angular2.

Aqui está a fonte do primeiro componente:

/* app.component.ts */

// ...imports
import {ConfigService} from './config.service';

@Component({
    selector: 'my-app',
    templateUrl: 'app/templates/app.html',
    directives: [Grid],
    providers: [ConfigService]
})
export class AppComponent {
    public size: number;
    public square: number;

    constructor(_configService: ConfigService) {
        this.size = 16;
        this.square = Math.sqrt(this.size);

        // Here I call the service to put my data
        _configService.setOption('size', this.size);
        _configService.setOption('square', this.square);
    }
}

e o segundo componente:

/* grid.component.ts */

// ...imports
import {ConfigService} from './config.service';

@Component({
    selector: 'grid',
    templateUrl: 'app/templates/grid.html',
    providers: [ConfigService]
})
export class Grid {
    public config;
    public header = [];

    constructor(_configService: ConfigService) {
        // issue is here, the _configService.getConfig() get an empty object 
        // but I had filled it just before
        this.config = _configService.getConfig();
    }
  }

e finalmente meu pequeno serviço, o ConfigService:

/* config.service.ts */

import {Injectable} from 'angular2/core';

@Injectable()
export class ConfigService {

    private config = {};

    setOption(option, value) {
        this.config[option] = value;
    }

    getConfig() {
        return this.config;
    }
}

Meus dados não são compartilhados, no grid.component.ts, o_configService.getConfig() A linha retorna um objeto vazio, mas é preenchido logo antes no app.component.ts.

Eu li os documentos e tutoriais, nada funcionou.

O que estou perdendo ?

obrigado

RESOLVIDO

Meu problema foi que eu estava injetando meu ConfigService duas vezes. Na inicialização do aplicativo e no arquivo em que estou usando.

Eu removi oproviders configuração e funcionou!

questionAnswers(3)

yourAnswerToTheQuestion