Thinkphp8+Nuxt4开发:执行pnpm dev 报错[ERROR] Command failed with exit code ...
TP+nuxt开发时,前端安装富文本编辑器依赖包wangEditor后
pnpm add @wangeditor/editor @wangeditor/editor-for-vue
前端执行pnpm dev报错:[ERROR] Command failed with exit code 1: "C:\nvm4w\nodejs\node.exe" "C:\Users\Administrator\AppData\Local\node\corepack\v1\pnpm\11.22.0\bin\pnpm.mjs" install

原因分析:
不是安装 wangEditor(富文本)直接导致的代码损坏,但安装富文本这个动作,触发了 pnpm 依赖扫描,把这个隐藏问题暴露出来了。 这个坑本身早就潜伏在项目里,之前一直没触发,今天安装新包,才引爆 。
1.项目里有一段钩子:postinstall: "nuxt prepare" package.json 的 postinstall 含义:只要执行 pnpm install,安装结束后自动跑 nuxt prepare(生成 nuxt 类型文件)。之前开发:很久没执行 pnpm install,所以这个钩子不会跑,自然看不到报错
2.pnpm v11 新增安全机制(关键):
第三方 npm 包自带的 prebuild/build 脚本,默认不再自动执行。 一旦某个包有构建脚本,pnpm 就会抛出 ERR_PNPM_IGNORED_BUILDS。
- 出问题的包:
es5-ext@0.10.64,一个非常老旧的底层依赖包。 - 这个包不是你手动装的,是项目里其他依赖间接拉进来的嵌套依赖
解决方法:
pnpm approve-builds:放行 es5-ext 脚本,快速解决,适合本地开发机;- 删除
package.json的"postinstall": "nuxt prepare":从根源避免每次 install 自动执行 nuxt prepare,推荐长期开发使用。

注意:
后续新增任何 npm 包(element-plus 等),都有概率再次触发同类校验。
最佳做法:删掉 postinstall,以后需要生成类型,手动执行一次 pnpm nuxt prepare 即可。

浙公网安备 33010602011771号