You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在pnpm脚本中设置Vite环境变量失败的问题求助

在pnpm脚本中设置临时环境变量的解决方案

你遇到的问题是因为BUILD_PLATFORM=web是类Unix系统(Linux/macOS)的Shell语法,Windows的CMD/PowerShell不识别这种写法,所以报错。以下是几种可行的解决方式:

分平台直接适配

  • Windows CMD环境:用set命令定义环境变量,脚本修改为:
    "build": "set BUILD_PLATFORM=web && vite build"
    
  • Windows PowerShell环境:用PowerShell的环境变量语法:
    "build": "$env:BUILD_PLATFORM='web'; vite build"
    
  • Linux/macOS环境:你原来的写法本身有效,直接用即可:
    "build": "BUILD_PLATFORM=web vite build"
    

跨平台通用方案(推荐)

如果需要一套脚本兼容所有系统,可以用cross-env工具:

  1. 安装开发依赖:
    pnpm add cross-env -D
    
  2. 修改package.json中的build脚本:
    "build": "cross-env BUILD_PLATFORM=web vite build"
    

这样不管在Windows还是类Unix系统下运行,都能正确识别环境变量。

动态传参调用(无需修改脚本)

如果需要每次调用时灵活指定环境变量值,不用把变量写死在脚本里:

  • Linux/macOS终端直接执行:
    BUILD_PLATFORM=web pnpm build
    
  • Windows CMD执行:
    set BUILD_PLATFORM=web && pnpm build
    
  • Windows PowerShell执行:
    $env:BUILD_PLATFORM='web'; pnpm build
    

对应的package.json只需要保留基础构建命令:

"build": "vite build"

内容的提问来源于stack exchange,提问作者Mero

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 00:52:34