rs build 的process.env的值undefined解决方案

首先,一定要明确,如果新增或者改了一个process.env值,必须要重新构建才能取值,否则会报错Uncaught ReferenceError: process is not defined 但是这个没关系,重启就行了

其次,rsbuild的默认export,必须以PUBLIC_开头,就像next的必须以什么NEXT__xxxx开头一样

再次,里面获取不到就要在rsbuild.config.ts里加,在

source: {

entry: await getEntries(),

define: {

'process.env.PUBLIC_1111': JSON.stringify(

process.env.PUBLIC_1111 ?? '',

),

最后,可以额外import,虽然不知道有用没用。(应该是没用吧,算是自定义的)

import { defineConfig, loadEnv } from '@rsbuild/core';

const { publicVars } = loadEnv({ prefixes: 'PUBLIC_' });

console.log(publicVars, 'publicVars');

export default defineConfig({

source: {

entry: await getEntries(),

define: {

...publicVars,

最关键的来了

所以env不能放在env/local下面,读取不到,完完全全放在根目录下才能读到,结束,坑。


更新:以上几步其实都不需要,都是验证的,最关键是最后一步,只要环境对,加上有PUBLIC_前缀就ok。只是记录下

相关推荐
techdashen2 分钟前
Rust 项目管理动态 — 2026 年 2 月
开发语言·后端·rust
Ajie'Blog4 分钟前
2026年AI安全与治理:从幻觉到系统性欺骗的攻防之战
javascript·人工智能·安全·rpc·json·rag
智码看视界1 小时前
老梁聊全栈系列:Vue3核心与组合式API深度解析
javascript·vue.js·ecmascript
想吃火锅10059 小时前
【leetcode】405.数字转换为十六进制数js
开发语言·javascript·ecmascript
专注VB编程开发20年9 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
cfm_29149 小时前
JVM GC垃圾回收初步了解
java·开发语言·jvm
~小先生~9 小时前
Python从入门到放弃(一)
开发语言·python
许彰午10 小时前
17_synchronized关键字深度解析
java·开发语言
z落落10 小时前
C# 泛型接口和泛型类+泛型约束
开发语言·c#
阿正的梦工坊10 小时前
【Rust】02-变量、不可变性与基础类型
开发语言·后端·rust