uni-admin使用 pnpm 安装依赖,项目运行时报 Cannot find module xxx
·
uni-app 并非“只能”用 npm,但在官方脚手架(vue-cli 插件)和 HBuilderX 的默认工作流里,node_modules 的目录结构被硬编码成了 npm/yarn 的扁平模式。
pnpm 默认采用“全局 store + 符号链接”的嵌套结构,这会让 uni-app 的编译插件、webpack 配置以及 HBuilderX 的依赖扫描逻辑找不到包,于是出现:
- 运行时报
Cannot find module xxx - 编译小程序时卡死或白屏
- HBuilderX 的语法提示、类型声明丢失
只要把 pnpm 的目录结构“降级”成扁平模式,就可以正常安装和运行。做法很简单:
- 项目根目录新建
.npmrc - 写入
shamefully-hoist=true auto-install-peers=true strict-peer-dependencies=false - 删除原
node_modules与pnpm-lock.yaml,重新pnpm i
实测 CLI 项目与 HBuilderX 均可正常 dev/build。
因此,uni-app 并不是“不支持 pnpm”,而是需要额外配置;官方文档暂未强调这一点,所以社区普遍误以为只能用 npm。
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐


所有评论(0)