我在基于 Vite 和 Typescript 的 Vue 3 應用程式上有一個非常基本的 axios 設定。但是,我收到“baseURL”的打字稿錯誤,內容如下:
鍵入'字串 | 布林值 | undefined' 不可分配給型別 'string | 不明確的'。型別 'false' 不可分配給型別 'string | 未定義'.ts(2322)
明確暗示VITE_API_URL是 type string | boolean | undefined,但baseURL不喜歡接受布林值。現在,顯然我并沒有試圖為這個屬性分配一個布林值,但它的型別表明它可能是,這足以讓它不安。
現在 Vite 的介面定義VITE_API_URL如下:
interface ImportMetaEnv {
[key: string]: string | boolean | undefined
BASE_URL: string
MODE: string
DEV: boolean
PROD: boolean
SSR: boolean
}
如果我是創建這個界面的人,我會洗掉布林值,因為我永遠不會為這個值設定布林值,但我不滿意改變 Vite 的內置界面是正確的做法這里。
我仍在擴展我的 Typescript 知識,所以我希望這是我所缺少的一些簡單的東西,但我似乎找不到任何解決方案來讓這兩者發揮得很好。考慮到 Vite 和 Axios 的流行程度,我希望其他人已經遇到了這個問題并找到了一個簡單的解決方案。任何幫助,將不勝感激!
httpClient.ts以下:
import axios from 'axios';
const httpClient = axios.create({
baseURL: import.meta.env.VITE_API_URL,
headers: {
'Content-Type': 'application/json',
},
});
export default httpClient;
uj5u.com熱心網友回復:
您可以
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/443184.html
