我收到了警告…
对装饰器的实验性支持是一个在未来版本中可能会更改的特性。设置'experimentalDecorators'选项'以删除此警告。
... 即使我的编译选项在tsconfig。Json有以下设置:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
奇怪的是,一些使用装饰器的随机类不显示警告,但同一项目中的其他类会显示警告。
在TypeScript编译器中,什么会导致这种行为?
我收到了警告…
对装饰器的实验性支持是一个在未来版本中可能会更改的特性。设置'experimentalDecorators'选项'以删除此警告。
... 即使我的编译选项在tsconfig。Json有以下设置:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
奇怪的是,一些使用装饰器的随机类不显示警告,但同一项目中的其他类会显示警告。
在TypeScript编译器中,什么会导致这种行为?
当前回答
我在下面的语句中有这个错误
对装饰器的实验性支持是一个在未来版本中可能会更改的特性。在你的tsconfig或jsconfig中设置'experimentalDecorators'选项来删除这个警告。ts(1219)
这是因为我的组件没有在AppModule或(app.module.ts)中注册 我简单地给命名空间
import {abcComponent} from '../app/abc/abc.component';
并在申报中进行了登记
其他回答
当您选择“src”文件夹作为工作区文件夹时,也会发生此错误。
当选择“src”,“node_modules”所在的根文件夹时,错误消失
打开设置。Json文件在以下位置<project_folder>/.vscode/settings.json
或者您可以从下面提到的菜单中打开该文件
VSCode -> File -> Preferences -> Workspace Settings
然后在“设置”中添加以下行。json文件
{
"typescript.tsdk": "node_modules/typescript/lib",
"enable_typescript_language_service": false
}
这是所有。关于'experimentalDecorators'你不会看到任何警告/错误
我也有同样的问题。通过其他类导入带有“decorator warning”的类来修复。
如果你使用Deno JavaScript和TypeScript运行时,并且在tsconfig中启用了experimentalDecorators:true。json或VSCode ide设置。这是行不通的。根据Deno要求,在运行Deno文件时需要提供tsconfig作为标志。参见自定义TypeScript编译器选项
在我的特殊情况下,我正在运行一个Deno测试并使用。
$ deno test -c tsconfig.json
如果它是一个文件,你会有
$ deno run -c tsconfig.json mod.ts
我tsconfig.json
{
"compilerOptions": {
"allowJs": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"module": "esnext"
}
}
打开整个项目的文件夹而不是project-name/src
tsconfig。Json不在SRC文件夹中