Something like ng-include can not be supported for several reasons:
- In Angular 2 directives are declared on per component. Having ng-include would mean that the same ng-include would behave differently depending where it is included. The same goes for variable declarations.
- It is a security risk, in the sense of you may point it to a user input.
- It prevents Angular from doing offline compilation, hence speed / size improvements.
The solution is that you need to wrap your templates into components, and then you can lazy load the components. This will work with offline compilation, does not have security concerns and still allows for offline compilation.
Issues Final statement about ngInclude alternative Proposal: Declarative Dynamic Components