React项目运行Storybook出现ERR_OSSL_EVP_UNSUPPORTED错误求修复
修复Storybook启动时的ERR_OSSL_EVP_UNSUPPORTED错误
这个错误是Node.js 17及以上版本默认启用OpenSSL 3.0加密算法,而旧版Storybook依赖的Webpack版本不兼容导致的,以下是几种可行修复方案:
方案1:临时单次启动
根据你的操作系统,在终端执行对应命令:
- Windows(CMD):
set NODE_OPTIONS=--openssl-legacy-provider && npm run storybook - Windows(PowerShell):
$env:NODE_OPTIONS="--openssl-legacy-provider"; npm run storybook - macOS/Linux:
NODE_OPTIONS=--openssl-legacy-provider npm run storybook
方案2:永久修改启动脚本
修改项目根目录下的package.json,把storybook脚本改成带兼容参数的形式:
"scripts": { // Windows CMD用户用这个 "storybook": "set NODE_OPTIONS=--openssl-legacy-provider && start-storybook -p 6006", // macOS/Linux或Windows PowerShell用户用这个 // "storybook": "NODE_OPTIONS=--openssl-legacy-provider start-storybook -p 6006", "build-storybook": "build-storybook" }
修改后直接执行npm run storybook即可。
方案3:升级Storybook到兼容版本
如果想彻底解决依赖兼容问题,直接升级Storybook到支持Node.js 17+的版本:
npm update @storybook/react @storybook/core-webpack5 --save-dev
或者升级所有Storybook相关依赖:
npm update storybook/* --save-dev
内容的提问来源于stack exchange,提问作者Snehil Agrahari
相关产品推荐
相关产品推荐

