I find that it works pretty well by loading the plugin in the canActivate() lifecycle hook of a module. The downside of this approach is that you need to do the work for each module that need special plugin loading. Would be great to be able to provide some config in the route of configureRouter() but didn’t find a way to do so.