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。只是记录下

相关推荐
aini_lovee6 分钟前
MATLAB基于小波技术的图像融合实现
开发语言·人工智能·matlab
WooaiJava17 分钟前
AI 智能助手项目面试技术要点总结(前端部分)
javascript·大模型·html5
R1nG86319 分钟前
多线程安全设计 CANN Runtime关键数据结构的锁优化
开发语言·cann
初次见面我叫泰隆19 分钟前
Qt——5、Qt系统相关
开发语言·qt·客户端开发
亓才孓24 分钟前
[Class的应用]获取类的信息
java·开发语言
开开心心就好32 分钟前
AI人声伴奏分离工具,离线提取伴奏K歌用
java·linux·开发语言·网络·人工智能·电脑·blender
Never_Satisfied36 分钟前
在JavaScript / HTML中,关于querySelectorAll方法
开发语言·javascript·html
董世昌4136 分钟前
深度解析ES6 Set与Map:相同点、核心差异及实战选型
前端·javascript·es6
3GPP仿真实验室1 小时前
【Matlab源码】6G候选波形:OFDM-IM 增强仿真平台 DM、CI
开发语言·matlab·ci/cd
devmoon1 小时前
在 Polkadot 上部署独立区块链Paseo 测试网实战部署指南
开发语言·安全·区块链·polkadot·erc-20·测试网·独立链