Typescript 木偶演员/类型脚本:如何在eval$page函数中转换到元素?

Typescript 木偶演员/类型脚本:如何在eval$page函数中转换到元素?,typescript,element,puppeteer,getattribute,Typescript,Element,Puppeteer,Getattribute,我尝试读取木偶演员中某个属性的值: const value = attribute && await page.$eval(selector, (node: Element, name: string) => { return node.getAttribute(name) }, attribute.name); 导致 错误TS2339:类型“Element”上不存在属性“getAttribute” 当我投 节点:任何 它不使用node:Element,而是可以正

我尝试读取木偶演员中某个属性的值:

const value = attribute && await page.$eval(selector, (node: Element, name: string) => {
    return node.getAttribute(name)
}, attribute.name);
导致

错误TS2339:类型“Element”上不存在属性“getAttribute”

当我投

节点:任何

它不使用node:Element,而是可以正常工作

这样做的原因似乎是React将类型重载为

接口元素{}

在node_modules/@types/react/gloabal.d.ts中


如何转换到标准元素?

您可能缺少
tsconfig.json
中的
dom
库。添加如下:

"lib": [
    "dom",
    "es2018"
],
如果添加库没有帮助,请尝试使用以下命令显式声明所需的方法:

接口元素{
getAttribute(名称:string):string;
}

有了它,您可以随意扩展任意类型。

这有帮助吗?或者这个是的,谢谢!将dom添加到库中。这是否回答了您的问题?是的,它是…哦,对不起,我的错,它是由StackOverflow生成的。很高兴它有帮助!