对于使用 TypeScript 的开发者来说,添加类型声明可以获得类型检查以及代码提示。 可以在项目根目录下创建一个 type 文件夹,并在该文件加下创建一个一个的类型声明文件。
创建 vite-client.d.ts 文件
Vite 默认的类型定义是写给它的 Node.js API 的。要将其补充到一个 Vite 应用的客户端代码环境中,请添加一个 d.ts 声明文件。
在配置完 tsconfig.json 文件的 "types": ["node", "vite/client"] 后,vite/client 会提供以下类型定义补充:
- 资源导入 (例如:导入一个 .svg 文件)
- import.meta.env 上 Vite 注入的 常量 的类型定义
- import.meta.hot 上的 HMR API 类型定义
/// <reference types="vite/client" />
interface ImportMetaEnv {
/** 网站部署的目录 (公共基础路径) */
readonly VITE_BASE_URL: string;
/** API 接口路径前缀 */
readonly VITE_BASE_API_URL: string;
/** 是否清空掉代码中的 console */
readonly VITE_DROP_CONSOLE: string;
// 更多环境变量...
}
interface ImportMeta {
readonly env: ImportMetaEnv;
}
创建 global.d.ts 文件
import type packageJSON from '../package.json';
declare global {
// 定义全局常量类型声明(参见:vite.config.js 中的 define 配置)
const __APP_INFO__: {
pkg: typeof packageJSON;
lastBuildTime: string;
};
}