Hi Martin, I think, that is a non avoidable side-effect of this workaround, cause here, you create your own Injector instead of using Angular's Injector. Unfortunatelly, there seems to be no way to get hold of Angular's Injector within @CanActivate yet. But I hope, that this will change.
Wishes, Manfred Am Dienstag, 29. Dezember 2015 18:16:14 UTC+1 schrieb Martin Wawrusch: > > I tried using this strategy and only partially succeeded. It seems that > canActivate is invoked BEFORE the bootstrap initializes its services, so I > end up with three problems: > > 1. I have two instances of my singleton services ;-( > 2. I have to list all services that my 'User' service depends on > 3. Trying to inject a router in any referenced services, or through > Injector.resolveAndCreate([Router]) , fails miserable with an Cannot > resolve all parameters for Router(?,?,?). Make sure they all have valid > type or annotations. > > Please advise... > > > On Monday, December 28, 2015 at 9:30:30 AM UTC-8, Manfred Steyer wrote: >> >> Hi Sander, >> >> thanks for this info. >> >> Wishes, >> Manfred >> >> >> Am Montag, 28. Dezember 2015 05:51:36 UTC+1 schrieb Sander Elias: >>> >>> Hi Manfred, >>> >>> For now you can use the injector like this: >>> let injector = Injector.resolveAndCreate([User]) >>> let user = injector.get(User); >>> >>> But I believe the will be an extension to the decorator so it will >>> become a bit easier to deal with. (This is for now just a gut feeling..) >>> >>> Regards >>> Sander >>> >> -- 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.
