結論
tsconfig.json に "strictNullChecks": true
で設定する。"strict": true
も可。
{ "compilerOptions": { "strictNullChecks": true } }
調査方法
TS Playgroundにて、以下コードを貼り付けると「Type 'undefined' is not assignable to type '{}'
」 が発生するためVSCodeかローカル設定が怪しいと推測。
const bar: {} = undefined;
ChatGPTにて、「VSCodeで以下のTypeScriptを定義すると型エラーが発生しません。理由を教えてください」と質問した。
strictNullChecks の存在を教えてもらい公式ドキュメントを読んだ後、設定すると解決した。