我正在处理一个项目,遇到了Property 'length' does not exist on type 'Node'.
的打字错误
我已经从javascript中的选择对象中解构了anchorNode
const selection = window.getSelection()
const {anchorNode} = selection;
尽管我能够读取anchorNode
的length属性,但类型脚本表明它在类型Node上不存在。
我该怎么补救呢?
我正在处理一个项目,遇到了Property 'length' does not exist on type 'Node'.
的打字错误
我已经从javascript中的选择对象中解构了anchorNode
const selection = window.getSelection()
const {anchorNode} = selection;
尽管我能够读取anchorNode
的length属性,但类型脚本表明它在类型Node上不存在。
我该怎么补救呢?
1条答案
按热度按时间huus2vyu1#
锚通常返回单个
Node
对象,因此,如果查看Node
属性,可以看到没有length
属性。当然,javascript可以尝试做一些幕后的魔术,比如类型转换和给予你长度,但是typescript只是说类没有this
length
属性。我不知道你想从
anchorNode
中得到什么长度,但我想这是他的孩子的长度,你可以使用:这是一段获取
anchorNode
下DOM元素的代码,由于childNodes
返回一个NodeList
,因此我们可以从中获取propertylength
。现在,如果你想要文本长度,那么只需要从节点中提取文本:
请记住,提取的文本包括text from the children as well.