TypeScript - なぜ __tests__ フォルダーで長い相対パスを @ に置き換えることができないのですか?
私は vue-cli を使って Vue プロジェクトを初期化しました。src フォルダでは @ を使うことができますが、__tests__ フォルダでは機能しません。tsconfig.json ファイルに設定はすでに追加しましたが、これがこの状況に対応しているかどうかはわかりません。
"paths": {
"@/*": ["src/*"]
},
回答 #1
テストフレームワークもパスエイリアスで設定する必要があります。tsconfig.json や vue.config.js(またはその他の設定ファイル)で自動的に設定されるわけではありません。
Jestでパスエイリアスを設定するには、moduleNameMapperオプションを使用します:
// <projectRoot>/jest.config.js
module.exports = {
moduleNameMapper: [
'^@/(.*)$': '<rootDir>/src/$1'
]
}
これは通常、@vue/cli-plugin-unit-jest を使用している場合に自動的に設定されますが、プラグインを使わずに自分で Jest をセットアップした場合は、上記の設定が必要になります。
