typescript - Vue: לא ניתן למצוא את המודול ~~~ או את ההצהרות הסוגיות המתאימות שלו. במודול בדיקות Vitest


אני משתמש ב-vite וב-vitest.

vite.config.ts

export default defineConfig({
  plugins: [vue(), VueDevTools()],
  resolve: {
    alias: [
      {
        find: '@',
        replacement: fileURLToPath(new URL('./src', import.meta.url)),
      },
      {
        find: '@mocks',
        replacement: fileURLToPath(new URL('./mock', import.meta.url)),
      },
    ],
  },
});

vitest.config.ts

export default mergeConfig(viteConfig, defineConfig({
  plugins: [tsconfigPaths()]
}));

tsconfig.app.json

{
  "compilerOptions": {
    "paths": {
      "@/*": ["src/*"],
      "@mocks/*": ["mock/*"]
    }
  }
}

מבנה פרויקט

  • שׁוֹרָשׁ

    • ללעוג/
    • src/
    • tests/converter.test.ts

ייבוא ה-Alias עובד ב-src/.
עכשיו יש לי בעיה. ב-converter.test.ts, כשאני מייבא מודול עם אליאס, (@/, @mock)
לא ניתן למצוא את המודול ~~~ או את ההכרזות הסוגיות המקבילות שלו.<< התרחשה.

החמצתי משהו?

סביבה

vue : 3.4.21 vite : 5.1.6

בדיקת ה-Run וה-Serve פועלות היטב ב-Intellij. וכאשר אני לוחץ Ctrl + קליק שמאל של העכבר -> ניתן לעבור לקובץ.

אבל הודעת השגיאה מופיעה וב-VSCode הפקודות test ו-run serve לא עובדות.

פתרון

פתרתי את הבעיה הזו. התשובה הייתה בקובץ tsconfig.app.json

{
  "include": ["src/**/*, "tests/**/*"]
}

This worked to me