中安拓也のブログ

プログラミングについて書くブログ

VSCodeのDecoratorに関するエラー:[ts] Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option to remove this warning.

f:id:l08084:20180209151947p:plain

はじめに

Visual Studio Codeを使ってAngular + Typescriptのコードを書いてたら下記のエラー(警告?)が発生したので、対処法を調べました。

[ts] Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option to remove this warning.

エラー文には、「今後のリリースでデコレータの仕様は変わる可能性があります。このエラーを消したければ、'experimentalDecorators' オプションを設定してください。」と書いてある気がします。

開発環境

  • Angular@5.2.0

  • TypeScript@2.5.3

  • VisualStudioCode@1.20.0

エラー対応方法

tsconfig.jsonにエラー内容で指示された'experimentalDecorators''allowJs'オプションを設定します。

{
  "compileOnSave": false,
  "include": [
    "typings/index.d.ts"
  ],
  "compilerOptions": {
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true, // <- this add
    "allowJs": true, // <- this add
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

tsconfig.jsonに上記設定を追加した後、VSCodeを再起動すると表題のエラーが表示されなくなるはずです。

参考にしたサイト

ihatetomatoes.net