最終更新日: 2023年08月15日
TypeScript
Nuxt3は完全に型付けされており、コーディング中に正確な型情報にアクセスできるように便利なショートカットが提供されています。
型チェック
デフォルトでは、パフォーマンス上の理由から、Nuxtはnuxi dev
やnuxi build
を実行する際には型チェックを行いません。ただし、vue-tsc
とtypescript
をdevDependencies
としてインストールし、nuxt.config ファイルで typescript.typeCheck
オプションを有効にするか、nuxiを使用して手動で型をチェックすることで、ビルド時または開発時に型チェックを有効にすることができます。
- bash
yarn nuxi typecheck
自動生成された型
nuxi dev
やnuxi build
を実行すると、Nuxtは以下のファイルを生成し、IDEの型サポート(および型チェック)を提供します。
.nuxt/nuxt.d.ts
このファイルには、使用しているモジュールの型と、Nuxt3が必要とするキータイプが含まれています。IDEはこれらの型を自動的に認識するはずです。
このファイル内のいくつかの参照は、buildDir(.nuxtディレクトリ)内でのみ生成されるファイルを指しています。したがって、完全な型情報を得るためには、nuxi dev
やnuxi build
を実行する必要があります。
.nuxt/tsconfig.json
このファイルには、お勧めの基本的なTypeScriptの設定が含まれています。Nuxtによって解決されたエイリアスや使用しているモジュールなどが注入されているため、~/file
や#build/file
のようなエイリアスに対して完全な型サポートとパスの自動補完を得ることができます。
この設定を拡張する方法について詳細を読む
./.nuxt/tsconfig.json
から拡張されたすべてのオプションは、tsconfig.json
で定義されたオプションによって上書きされることに注意してください。compilerOptions.paths
のようなオプションを自分自身の設定で上書きすると、TypeScriptは ./.nuxt/tsconfig.json
からのモジュール解決を考慮しなくなります。これにより、#imports
などのモジュール解決が認識されなくなる可能性があります。
もし、./.nuxt/tsconfig.json
で提供されるオプションをさらに拡張する必要がある場合は、nuxt.config
内でaliasプロパティを使用することができます。nuxiはそれらを認識し、それに応じて./.nuxt/tsconfig.json
を拡張します。
厳格なチェック
TypeScriptは、プログラムの安全性と解析を向上させるための特定のチェックを提供しています。
一度コードベースをTypeScriptに変換し、それに慣れてきたら、より高い安全性のためにこれらのチェックを有効にすることができます(詳細はこちらを参照してください)。
厳格な型チェックを有効にするには、nuxt.configを更新する必要があります。
- ts
export default defineNuxtConfig({
typescript: {
strict: true,
},
});