In Angular 1.x.x you simply ask for the same service and you end up with the same instance, making it possible to share the data in the service.
Now in Angular 2 I h
The comment by @maufarinelli deserves its own answer because until I saw it, I was still bashing my head against the wall with this issue even with @Alexander Ermolov's answer.
The problem is that when you add a providers to your component:
@Component({
selector: 'my-selector',
providers: [MyService],
template: `stuff`
})
This causes a new instance of your service to be injected... rather than being a singleton.
So remove all instances of your providers: [MyService] in your application except in the module, and it will work!