解決方法:在env.d.ts文件中添加以下代碼,這段代碼是一個 TypeScript 的聲明文件,用于讓 TypeScript 知道如何處理?Vue?單文件組件(.vue 文件)的導入。
/// <reference types="vite/client" />
// 聲明一個模塊,可以匹配任何以.vue結尾的文件
declare module '*.vue' {// 導入vue的defineComponent類型import { DefineComponent } from 'vue'// 定義一個常量component,類型為DefineComponent,DefineComponent 是 Vue 3 中的一個泛型類,// 接受三個類型參數,分別表示 Props、Emits 和 Slots 的類型。const component: DefineComponent<{}, {}, any>// 將這個 component 導出為默認導出。export default component
}
通過這個聲明文件,可以確保在導入 Vue 單文件組件時,TypeScript 能夠正確地推斷組件的類型,并提供相應的代碼提示和類型檢查。?
另一個bug:
路徑正確,但是還是有紅色波浪線,?而且項目可以正常運行,ctrl+左鍵 可以正常跳轉,用相對路徑就不報錯,用@符號就報錯,解決方案:
在tsconfig.json里配置:
? "paths": {
? ? ? "@/*": ["./src/*"]
? ? }
?
{"files": [],"references": [{"path": "./tsconfig.node.json"},{"path": "./tsconfig.app.json"}],"compilerOptions": {
// 進行如下配置"paths": {"@/*": ["./src/*"]}}
}
注意就算是在tsconfig.app.json里配置了也沒用,要在tsconfig.json里進行相同配置才行。