我尝试执行以下操作,我有一个组件,在其中我有其他div元素,除此之外, 我想删除示例标记并按顺序将所有子元素传递给父元素
Angular4中的代码工作(开发工作,不在通用中工作,不能用于工作);
ngOnInit(): void {
var nativeElement: HTMLElement = this.el.nativeElement,
parentElement: HTMLElement = nativeElement.parentElement;
// move all children out of the element
while (nativeElement.firstChild) {
parentElement.insertBefore(nativeElement.firstChild, nativeElement);
}
// remove the empty element(the host)
parentElement.removeChild(nativeElement);
}
我通过Renderer2修改dom的方式,因为文档指定了它,但是下面的代码不起作用,卡在无限循环中。
export class AppSidebarFooter {
constructor(private el: ElementRef,private renderer:Renderer2) { }
//wait for the component to render completely
ngOnInit(): void {
var nativeElement: HTMLElement = this.el.nativeElement,
parentElement: HTMLElement = nativeElement.parentElement;
// move all children out of the element
while (nativeElement.firstChild) {
this.renderer.insertBefore(parentElement,nativeElement.firstChild,nativeElement);
this.renderer.removeChild(nativeElement,nativeElement.firstChild);
//parentElement.insertBefore(nativeElement.firstChild, nativeElement);
}
// remove the empty element(the host)
this.renderer.removeChild(parentElement,nativeElement);
}
}
任何解决方案?