import.meta.env 在除 vite.config.ts 文件之外的任何地方都有效

Adi*_*ngh 6 reactjs vue.js vite

我使用vite创建了 React 项目。

In viteimport.meta.env.VITE_SOME_RANDOM_ENV_VARIABLE用于访问项目中任何位置的环境变量。

例如下面第 12 行的代码。

在此输入图像描述

但我的问题是,当我尝试访问vite.config.ts文件中的环境变量时,出现以下错误。

Property 'env' does not exist on type 'ImportMeta'
Run Code Online (Sandbox Code Playgroud)

我还添加了下图来显示错误。

在此输入图像描述

您能解释一下为什么vite.config.ts文件中的行为不同吗?我还在下面添加了 importMeta.d.ts 文件的代码供您参考。

在此输入图像描述

我在这里得到了解决方案,但是您仍然可以解释为什么文件中的行为不同吗vite.config.ts

小智 10

vite.config.ts将其放在文件的顶部

/// <reference types="vite/client" />
Run Code Online (Sandbox Code Playgroud)


oya*_*yal 6

尝试这个:

// tsconfig.json
{
  "compilerOptions": {
    "types": ["vite/client"]
  }
}
Run Code Online (Sandbox Code Playgroud)