都說vue組合式api好,那必須來一套試試,而且element ui的demo全是lang="ts"了
改成組合式api沒問題,但是當加上lang="ts"之后就瘋狂報錯
src/components/table/tableshow.vue:7:28 - error TS2304: Cannot find name 'tempshow'.
src/components/table/tableshow.vue:8:29 - error TS2304: Cannot find name 'searchtemplate'.
但是npm run dev 是運行正常的
經過一番搜索之后,這個錯誤是比較難搜索到的
方法一:
注意看package.json 中的vue-tsc --noEmit 刪掉就可以了
{"scripts": {"dev": "vite","build": "vue-tsc --noEmit && vite build"}
}
修改后如下:
{"scripts": {"dev": "vite","build": "vite build"}
}
?搜一下vue-tsc --noEmit 是干什么的
執行tsc --noEmit,TSC 會讀取配置文件獲取參數值,--noEmit的作用是只進行檢查,不進行編譯輸出。如果我們的代碼無錯,會直接退出,否則報錯。
方法二:
在tsconfig.json文件中"compilerOptions"選項下加入 “skipLibCheck”: true
在tsconfig.json文件中的"compilerOptions"選項下加入 "skipLibCheck": true 會禁用對引入的庫文件的類型檢查。這意味著TypeScript編譯器將跳過對庫文件的類型檢查,從而加快編譯速度。然而,這也可能會導致在使用庫文件時出現類型錯誤,因為編譯器不再檢查庫文件的類型信息。因此,應該謹慎使用這個選項,特別是在引入的庫文件中存在類型不確定或不完整的情況下。