.vue ファイルは Babel でトランスパイルが必要
TypeScript のコードは ts-jest がトランスパイル
→ この2つが正しく動くように設定するのがポイント。
特にデコレーター(@Prop など)を使うクラスコンポーネントは
emitDecoratorMetadata や experimentalDecorators が必須。
VueのSFC(.vueファイル)は
<template> の中は Vue のコンパイラ<script lang="ts"> の中は TypeScriptだけど、Jestが理解するのは普通のJS。
なので、
.vue → vue-jest が読み込んで<script> の中身は babel-jest で変換→ この変換がないとJestが.vueファイルを読めない。
npm install --save-dev \\
babel-jest \\
@babel/core \\
@babel/preset-env