I had a similar need and wound up having to address it in a very roundabout way. Here's the thread: https://groups.google.com/forum/#!topic/angular/KbZS207xL-k
In short, I created an external app-wide service that the components used to find each other. This is the equivalent of having to use global variables, in my opinion, and unfortunate that this is necessary. Since a component can have only a single <router-outlet>, it seems a big omission that that component can't ask the router which component instance is currently occupying that placeholder slot. On Monday, February 22, 2016 at 6:39:16 PM UTC-8, JG wrote: > > Here <http://plnkr.co/edit/71hmAy2hW3Jh2Vg2XsI6> ( > http://plnkr.co/edit/71hmAy2hW3Jh2Vg2XsI6) is a Plunker that demonstrates > what I am talking about. > > Look at the src/app.ts file, lines 28 - 30. This code (line 29) does not > execute. > > > On Monday, February 22, 2016 at 6:01:14 PM UTC-5, Long Field wrote: >> >> Not sure what you did, show us your code >> >> On Tuesday, February 23, 2016 at 7:50:50 AM UTC+11, JG wrote: >>> >>> I have a parent Component that has a template with " >>> <router-outlet></router-outlet>" in it. It also has a @RouteConfig >>> annotation that specifies which sub component is associated with different >>> routs. >>> What I am trying to do is: to subscribe to Events (EventEmitter) that >>> are fired by the loaded sub component. >>> >>> I can easily inject the sub component into my parent component and >>> subscribe to it's EventEmitter, but that doesn't work. I think that the >>> problem is that the injected instance is not the same the one that emits >>> the events. >>> >>> So, my question is: if a component has @RouteConfig([ {path: >>> "/somePath", component: ChildComponent, as: "ChildCmp"}]), how can I >>> get a reference to ChildComponent to subscribe to it's event? >>> >> -- You received this message because you are subscribed to the Google Groups "AngularJS" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/angular. For more options, visit https://groups.google.com/d/optout.
