从ElementRef获取文本?

Mat*_*nth 5 angular angular5

这样的感觉应该是一个非常基本的问题...

我正在使用一个返回不可见/呈现的DOM节点/元素的插件。我可以轻松地将其转换为ElementRef,并正确填充nativeElement。

如何获取元素的文本?

我知道使用AngularJS,我会做 angular.elem(node).text()

Con*_*Fan 7

要获取元素的文本内容,请使用textContentinnerText属性:

elementRef.nativeElement.textContent
elementRef.nativeElement.innerText
Run Code Online (Sandbox Code Playgroud)

此堆叠闪电战中显示了一个示例。


以下是MDN文档中给出的一些区别:

  • 虽然textContent获取所有元素(包括<script><style>元素)的内容,但innerText却没有。
  • innerText知道样式,不会返回隐藏元素的文本,而textContent会返回。
  • innerText知道CSS样式,它将触发重排,而textContent不会。
  • 与textContent不同,在Internet Explorer(包括11版及更高版本)中更改innerText不仅会从元素中删除子节点,而且会永久破坏所有后代文本节点(因此无法将节点再次插入任何其他元素或同一个元素中元素)。