typescript @类型/eslint错误:未导出ESTree的ChainExpression和ImportExpression成员

jw5wzhpr  于 2023-02-20  发布在  TypeScript
关注(0)|答案(6)|浏览(374)

我在使用npm start执行我的角应用程序后遇到了一些麻烦,ESTree接口的“ChainExpression”和“ImportExpression”成员没有导出,导致错误...
请检查下面的图像:

我在我的package.json中使用Angular 12和下一个节点依赖项,请参见以下内容:

{
...
"@types/node": "12.11.1",
"eslint": "7.10.0",
"ts-node": "8.3.0",
"tslib": "2.2.0",
"tslint": "6.1.0",
"typescript": "4.2.4",
...
}

你对这个问题有什么想法吗?我将感激任何帮助。

tyky79it

tyky79it1#

我遇到了同样的问题,可以看到我的节点模块@types有问题:eslint指的是从estree中丢失的ChainExpression和ImportExpression。将它们与一个新的angular 12项目进行比较,然后通过如下更新我的estree来修复:

npm install @types/estree@0.0.47
of1yzvn4

of1yzvn42#

我也遇到了同样的问题。这让我把"typeRoots": ["node_modules/@types"]添加到tsconfig.json中,从而解决了这个问题。

$ node -v
v16.13.0

$ npm -v
8.5.1

$ yarn -v
1.22.5
yacmzcpb

yacmzcpb3#

尝试将eslint更新为版本7.27.0,删除package-lock.json,删除node_modules文件夹,然后再次删除npm install
@types/estree似乎在14小时前更新了looking here,这可能会导致问题。
顺便说一句,如果您使用eslint进行脱绒,那么可以去掉package.json中的tslint条目。

qlfbtfca

qlfbtfca4#

我在运行typedoc时也遇到了同样的问题。
这个修好了。

npm install @types/estree@latest
1tu0hz3e

1tu0hz3e5#

我正在进行Angular 迁移。我将项目从Angular 11迁移到Angular 12。在构建项目时,我开始出现以下错误

StaticBlock?: ((node: ESTree.StaticBlock & NodeParentExtension) => void) | undefined;

正如上面所建议的,我降级到@types/estree@0.0.47。我开始得到更多的错误。

PropertyDefinition?: ((node: ESTree.PropertyDefinition & NodeParentExtension) => void) | undefined;

PrivateIdentifier?: ((node: ESTree.PrivateIdentifier & NodeParentExtension) => void) | undefined;

 StaticBlock?: ((node: ESTree.StaticBlock & NodeParentExtension) => void) | undefined;

我深入研究了定义文件,发现这些属性在@types/estree定义文件中不可用。
我将estree从0.0.47升级到1.0.0。这解决了构建错误。

npm i -D @types/estree@1.0.0
o2g1uqev

o2g1uqev6#

不知何故@types/eslint落后了。这个问题的解决方案是:

npm install --save-dev @types/eslint

然后删除package-lock.jsonnode_modules 文件夹并再次运行安装:

npm install

错误现在应该消失了。

相关问题