よっしー
こんにちは。よっしーです(^^)
今日は、SvelteKitでの移行について解説しています。
背景
SvelteKitでの移行について調査する機会がありましたので、その時の内容を備忘として記事に残しました。
生成されるtsconfig.jsonがより厳格になりました
以前は、あなたのtsconfig.json
にpaths
やbaseUrl
が含まれていた場合でも、生成されたtsconfig.json
はある程度有効な設定を生成しようと努めていました。SvelteKit 2では、バリデーションがより厳格になり、tsconfig.json
でpaths
またはbaseUrl
を使用すると警告が表示されます。これらの設定はパスエイリアスを生成するために使用されるため、代わりにsvelte.config.js
のalias
設定オプションを使用して、バンドラー用の対応するエイリアスも作成すべきです。
解説
この変更は、TypeScriptの設定ファイル(tsconfig.json)の扱いに関する重要な更新について説明しています:
- 以前の動作(バージョン1):
paths
やbaseUrl
が含まれていても許容- 可能な限り有効な設定を生成しようと試みる
- 柔軟だが、問題が見過ごされる可能性がある
- 新しい動作(バージョン2):
- より厳格なバリデーション
paths
やbaseUrl
の使用時に警告- 設定場所の統一を強制
- 推奨される対応:
tsconfig.json
でのpaths
/baseUrl
設定を避ける- 代わりに
svelte.config.js
のalias
オプションを使用 - これにより:
- TypeScript側のパスエイリアス
- バンドラー側のパスエイリアス
の両方が適切に設定される
- この変更の利点:
- 設定の一貫性が向上
- エラーの早期発見
- バンドラーとTypeScriptの設定の同期が容易に
この更新により、より堅牢なプロジェクト設定が可能になり、設定の不一致による問題を防ぐことができます。
おわりに
今日は、 SvelteKitでの移行について解説しました。
よっしー
何か質問や相談があれば、コメントをお願いします。また、エンジニア案件の相談にも随時対応していますので、お気軽にお問い合わせください。
それでは、また明日お会いしましょう(^^)
コメント