I know that in ng2 we have ComponentFactoryResolver that can resolve factories that we can apply to a ViewContainerRef.
ComponentFactoryResolver
ViewContainerRef
But, is there somet
No, directives can't be added or removed dynamically. They are only applied to HTML statically added to component templates.
What you could do is to enable/disable the directive by passing a parameter (@Input()) to the directive to notify it to do something or not.
@Input()