Fedora执行sanity upgrade报错找不到@babel/plugin-proposal-class-properties
解决方案
报错根因
你当前使用的@sanity/core@^2.18.0属于Sanity v2的旧版本,依赖的@babel/plugin-proposal-class-properties@^7.10.4是Babel已更名的历史包,该包后续已被合并到正式插件@babel/plugin-transform-class-properties中,部分第三方npm源可能没有同步保留该旧版本包,或是本地npm缓存异常导致拉取失败。
分步操作
- 清理npm全局及项目本地缓存:
npm cache clean --force - 切换到npm官方源,避免第三方源同步不全:
npm config set registry https://registry.npmjs.org/ - 在项目studio目录下手动安装对应版本的缺失依赖:
npm install @babel/plugin-proposal-class-properties@7.10.4 --save-dev - 重新执行升级命令即可:
sanity upgrade
备选方案
如果以上操作仍报错,可以直接升级到Sanity v2的最新稳定版,避开该依赖兼容问题:npm install @sanity/core@latest-v2 @sanity/cli@latest-v2 --save-dev
注意事项
Fedora系统下如果执行npm命令提示权限不足,可通过nvm管理Node.js版本避免系统权限冲突,或是在对应命令前加sudo临时提升权限。
内容的提问来源于stack exchange,提问作者Pedram Siavashi
相关产品推荐
相关产品推荐

