当前激活的运行配置显示在右上角下拉框中,不透明图标为永久配置,半透明为临时配置,带红色叉号表示参数错误;临时配置随操作自动生成且关闭IDE即丢失,永久配置需通过Run | Edit Configurations…手动保存方可复用和协作。

WebStorm 里“切换项目运行环境配置”不是指在多个项目之间跳转,而是指在同一个项目中,为不同场景(比如开发、测试、预发)切换对应的 Run Configuration —— 比如用不同的 NODE_ENV、端口、或启动脚本。
怎么看当前用的是哪个运行配置
右上角运行/调试配置下拉框里显示的名称,就是当前激活的配置。图标不透明的是永久配置,半透明的是临时配置;带红色叉号说明有参数错误,点进去会高亮报错项。
- 临时配置每次右键 HTML 文件选
Open in Browser或直接点 ▶️ 运行 JS 文件时自动生成,关掉 IDE 就丢 - 永久配置必须手动保存,路径是
Run | Edit Configurations…,它才真正参与 Git 协作和团队复用 - 如果下拉框里只有一两个选项,大概率你还没把常用配置设成永久的
怎么快速切换不同环境的配置(比如 dev / test / prod)
关键不是“切换项目”,而是提前建好多个命名清晰的永久配置,然后从下拉框里点选。每个配置可独立设置:
-
Environment variables:填NODE_ENV=development;PORT=3001(Windows 用分号,macOS/Linux 用冒号) -
Working directory:必须设为项目根目录(含package.json),否则process.env可能被子进程覆盖 -
JavaScript file或npm script:比如一个配npm run dev,另一个配npm run test:ci - 勾选
Allow parallel run:避免启动第二个配置时自动杀掉第一个(比如你同时跑前端 dev server 和后端 mock)
为什么改了 .env 文件但运行时没生效
WebStorm 默认完全不读 .env,哪怕你装了 dotenv,IDE 启动的 Node 进程也不会自动加载它——除非你显式配置。
- 最稳方式:在
Edit Configurations…的Environment variables栏里手动填值,不依赖文件 - 想复用
.env文件:装EnvFile插件,然后在配置里勾选Load environment variables from file,指定路径如.env.local - 别混用
cross-env和 IDE 的 Environment variables 字段,二者作用重复,容易覆盖 - npm script 里写
"dev": "node -r dotenv/config ./src/server.js dotenv_config_path=.env.local"也行,但这时变量由 Node 加载,IDE 不感知
运行配置改了但终端里 node -v 还是旧版本
这是常见错觉:运行配置影响的是你点 ▶️ 启动的进程,而 Terminal 是另一个上下文,它继承的是 WebStorm 启动时的系统 PATH,跟 nvm 无关。
- Terminal 里想用 nvm 版本,得先确保 WebStorm 是从带 nvm 初始化的终端里启动的(比如 macOS 上用
open -a "WebStorm.app") - 或者改 Terminal 设置:
Settings → Tools → Terminal → Shell path改成/bin/zsh -i(加-i表示交互式,会加载~/.zshrc) - Node.js 解释器路径要设成 nvm 的符号链接目录(如
C:\Program Files\nodejs\node.exe),不是具体版本路径
真正容易被忽略的是:运行配置里的 Working directory 和 Environment variables 必须配套 —— 目录不对,process.env 就可能被后续 require 链覆盖;变量没填全,if (process.env.NODE_ENV === 'production') 就永远进不去分支。











