我使用以下内容:
this.DynamicComponentLoader.loadIntoLocation(NewComponent, this.parent, 'new');
其中this.parent
是我的主要课程ElementRef
的{{1}}。
然而,这引起了我的错误:
TypeError:无法读取属性' componentView'未定义的。
我像这样创建App
:
this.parent
和我的setParent(parent){
this.parent = parent.nativeElement;
}
班级:
App
我的export class App{
constructor(_elementRef:ElementRef){
Service.setParent(_elementRef);
}
}
:
NewComponent
和import {Component} from "angular2/core";
@Component({
selector: 'new',
templateUrl: 'app/New.html'
})
export class NewComponent{
constructor(){
console.log("New Comopnent here")
}
}
:
Service
关于问题在哪里的任何想法?
答案 0 :(得分:1)
loadIntoLocation
至少需要这些参数/类型:
loadIntoLocation(type: Type, hostLocation: ElementRef, anchorName: string)
您使用nativeElement
的{{1}},这不是parent
,而是ElementRef
。
解决方案是,在存储父级时,您应该使用:
HTMLElement
我只能猜测这是你问题的来源