我收到了警告…
对装饰器的实验性支持是一个在未来版本中可能会更改的特性。设置'experimentalDecorators'选项'以删除此警告。
... 即使我的编译选项在tsconfig。Json有以下设置:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
奇怪的是,一些使用装饰器的随机类不显示警告,但同一项目中的其他类会显示警告。
在TypeScript编译器中,什么会导致这种行为?
我收到了警告…
对装饰器的实验性支持是一个在未来版本中可能会更改的特性。设置'experimentalDecorators'选项'以删除此警告。
... 即使我的编译选项在tsconfig。Json有以下设置:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
奇怪的是,一些使用装饰器的随机类不显示警告,但同一项目中的其他类会显示警告。
在TypeScript编译器中,什么会导致这种行为?
当前回答
这个错误也可能意味着tsconfig.json中有错误 以我为例,我在图书馆周围移动,没有固定路径
"extends": "../../tsconfig.base.json",
修复后,错误立即消失,不需要重新启动VS Code。
其他回答
我不想赘述这一点,但一定要补充以下内容
工作区设置,而不是用户设置
在文件>>首选项>>设置
“javascript.implicitProjectConfig。experimentalDecorators”:真正的
这为我解决了这个问题,我尝试了我在这里和其他地方找到的一些建议。
打开设置。Json文件在以下位置<project_folder>/.vscode/settings.json
或者您可以从下面提到的菜单中打开该文件
VSCode -> File -> Preferences -> Workspace Settings
然后在“设置”中添加以下行。json文件
{
"typescript.tsdk": "node_modules/typescript/lib",
"enable_typescript_language_service": false
}
这是所有。关于'experimentalDecorators'你不会看到任何警告/错误
File -> Preferences -> Settings
如果你使用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"
}
}
在我的例子中,我只需要将我创建的组件或模块导入到另一个模块中(例如共享模块)。以某种方式,VS Code实现文件的存在。