建议使用Angular Renderer2来编程性地操作DOM。
在我的指令中,我获取了一些el.nativeElement.innerText
文本,对其进行了转换,并希望将其添加到我的元素中:
const text = renderer.createText(`${el.innerText}%`);
renderer.appendChild(el, text);
问题出在el
上 - 它已经有了文本,所以它会在其后面添加转换后的文本。
我查看了Renderer2文档,似乎可以使用removeChild()
而不传递子级引用,因此我无法首先使用Renderer2清除组件?
在这种情况下,唯一实现它的方法是在渲染器方法之前使用innerText =''
,这使得它没有意义。