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。