【发布时间】:2017-02-06 10:45:43
【问题描述】:
我正在尝试使用 Angular2 将一些子元素添加到 div。我知道我可以使用 @ViewChild 获取元素,但我如何才能将一些 html 代码实际附加到 DOM 中?
我想要做的是“模仿”JQuery 附加功能。在 Angular2 中有什么方法可以做到这一点吗?
非常感谢您的帮助!
这是我的组件:
import { Component, ViewChild, ElementRef } from '@angular/core';
@Component({
moduleId: module.id,
selector: 'my-selector',
template: `<div #builder class="row">
<div class="s12 teal lighten-2">
<p class="flow-text">teste do html builder</p>
</div>
</div>
<a class="btn-floating btn-large waves-effect waves-light red" (click)="addRow()"><i class="material-icons">add</i></a>`,
})
export class BuilderComponent {
@ViewChild('builder') builder:ElementRef;
ngAfterViewInit() {
console.log(this.builder.nativeElement.innerHTML);
}
addRow() {
let htmlText = `<div #row class="row">
<div class="s12 teal lighten-2">
<p class="flow-text">div inside parent - html builder</p>
</div>
</div>`;
this.builder.nativeElement.append(htmlText); (???)
}
}
【问题讨论】: