ngmodule - AoT NGC/Angular2: la propiedad está protegida y solo es accesible dentro de la clase Error
cannot determine the module for class in (1)
De aquí
Para un componente dado, todos sus miembros (métodos, propiedades) accedidos por su plantilla deben ser públicos en el escenario de compilación anticipada. Esto se debe al hecho de que una plantilla se convierte en una clase TS. Una clase generada y un componente son 2 clases separadas ahora y no se puede acceder a miembros privados de clase cruzada.
Mi opinión es que contentTarget
es utilizado por el motor de plantillas y, por lo tanto, debe ser público para que AOT funcione.
En uno de nuestros componentes en nuestro proyecto Angular 2 / Ionic 2 (final / rc0), estoy usando:
protected contentTarget: ViewContainerRef;
ngOnInit() {
this.contentTarget.createComponent(componentFactory);
}
Compilador de AoT dice:
Error at ....: Property ''contentTarget'' is protected and only accessible within class ''IncludeTemplateComponent'' and its subclasses.
La variable (propiedad) no se usa en ningún otro lado en todo el proyecto.
Entonces ... ¿Alguien podría arrojar algo de luz sobre esto, es crear la fábrica de componentes pasando la variable contentTarget a su hijo o por qué el compilador no le gusta protegido aquí? ¿Están las variables protegidas "prohibidas" en todo Angular2 ahora?