angular - 如何在 Angular 2 中渲染动态创建的 div

标签 angular

我正在创建一个 div 并希望将其内容渲染为其组件的 html

component.ts 文件

div = document.createElement('div');

component.html 文件

<div [innerHtml]='div'></div>

它显示[object HTMLDivElement]而不是div内容。

有什么方法可以正确渲染它吗?

版本:Angular 2.3

这里是plunker

最佳答案

您所看到的是 div 元素转换为 String 类型的结果,这是在写入 innerHTML 属性时发生的,该属性需要是字符串。

作为 innerHtml 属性,您想要写入 div 的内容,而不是 HTMLDivElement 本身。像这样的事情会起作用:

const div = document.createElement('div')
div.innerHTML = '<h3>Hello there</h3>'

this.div = div.outerHTML;

关于angular - 如何在 Angular 2 中渲染动态创建的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45628883/

相关文章:

typescript - Angular2 beta 获取异常 "No provider for Router! (RouterLink -> Router)"

具有 Windows 身份验证预检问题的 Angular 4 HTTP POST

javascript - 从 Angular 2 组件调用纯 javascript 函数

node.js - 我可以为所有 angular2/4 项目使用一个 node_module 文件夹吗

angular - 组件 Angular 中加载 styleUrls 的条件

Angular2,取消订阅 ngOnDestroy 中的事件

javascript - 使 Observables 以同步和异步方式运行的方法是什么?

Angular 编译器选项

angular - 在 angular2-rc.7 webpack 中导入 ng2-select

javascript - ActivatedRoute 在 angular2 中设置为未定义