vite + typescript 项目,process.env 提示报错处理 TS2580 - 方法1
报错提示: TS2580: Cannot find name process. Do you need to install type definitions for node? Try npm i --save-dev @types/ node
在 Vite + TypeScript 项目中,process.env
相关的错误通常是因为 TypeScript 默认不会识别 Node.js 相关的全局变量。你可以通过以下方式解决:
方法 1:安装 @types/node
npm i --save-dev @types/node
然后,在 tsconfig.json
中添加:
{
"compilerOptions": {
"types": ["node"]
}
}
这样 TypeScript 就能识别 process.env
了。
方法 2:使用 import.meta.env
Vite 默认提供 import.meta.env
作为 process.env
的替代方案,建议使用:
console.log(import.meta.env.VITE_API_URL);
如果你的 process.env
变量是 Vite 运行时环境变量,应该改用 import.meta.env
,否则 TypeScript 仍会报错。
方法 3:手动声明 process
如果 @types/node
不能解决问题,你可以手动在 global.d.ts
或 env.d.ts
中添加:
declare var process: {
env: {
[key: string]: string | undefined;
};
};
这是一种临时解决方案,更推荐使用 import.meta.env
。