相信今天推荐的这个插件可以解决很多人 vite 使用过程中遇到过的体验不好的痛点,用过 import.meta.env 的小伙伴应该都有这样的问题。
不想看文字内容的可以直接看 GitHub 插件地址,或选择 哔哩哔哩视频版。
正文
举个例子🌰,比如说我们这里通过.env文件在项目中定义了一些环境变量
txt
# App 名字
VITE_APP_NAME="My Awesome App"
# App 版本号
VITE_APP_VERSION=1.0.0
# App 接口重试次数
VITE_APP_API_RETRY=3
# 是否开启 App 调试
VITE_APP_DEBUG=true
# App base url
VITE_APP_URL="/app-test"
# App 的 json 配置
VITE_APP_JSON_DATA={"key1":"value1","key2":"value2"}
问题一:不知道当前配置了哪些环境变量
当我想要在项目中通过 import.meta.env 对象访问定义的环境变量,敲下.
时,发现没有我们刚刚定义的环境变量,这个时候就不自信了,担心自己写错。有遇到的扣 1
ts
import.meta.env.??
问题二:判断值的时候需要写成字符串值比对
我们上面定义了 VITE_APP_DEBUG
来表示是否开启了 App 调试,他是一个 boolean值,但我们并不能直接使用 boolean值,我们需要在代码中这样写。 就很不简洁优雅
ts
if(import.meta.env.VITE_APP_DEBUG === 'true') {
console.log('调试模式开')
} else {
console.log('调试模式关')
}
启用插件
我们把这个插件启用,然后看下。
ts
// vite.config.js / vite.config.ts
import { envParse } from 'vite-plugin-env-parse'
export default {
plugins: [envParse()]
}
可以看到,代码提示也有了
浏览器中的值输出也变成了本来的值
现在,判断是否开启调试模式就不需要像刚刚那样写了。
ts
if(import.meta.env.VITE_APP_DEBUG) {
console.log('调试模式开')
} else {
console.log('调试模式关')
}
怎么样,get 到了没。
结尾
安装方式和更多内容参考仓库 README.md。
插件地址:github.com/yue1123/vit...
安装方式:
npm i vite-plugin-env-parse