You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular 10升级至11遇权限错误:无法访问父目录

解决方案

1. 修复npm权限问题(核心诱因)

不要用sudo执行npm命令,这会导致当前目录权限被root用户占用,触发uv_cwd权限错误。按以下步骤调整npm全局配置:

  • 创建专属全局npm目录:
    mkdir -p ~/.npm-global
    
  • 配置npm使用该目录:
    npm config set prefix '~/.npm-global'
    
  • 将目录添加到系统PATH(编辑~/.bashrc或~/.zshrc):
    export PATH=~/.npm-global/bin:$PATH
    
  • 刷新配置生效:
    source ~/.bashrc # 若用zsh则执行 source ~/.zshrc
    

2. 清理项目依赖环境

  • 删除项目根目录的依赖文件:
    rm -rf node_modules package-lock.json
    
  • 强制清除npm缓存:
    npm cache clean --force
    

3. 分步升级Angular(从10到11,再逐步推进到15)

升级至Angular 11

  • 先安装Angular CLI 11本地版本:
    npm install @angular/cli@11 --save-dev
    
  • 执行核心升级命令(无需sudo):
    ng update @angular/core@11 @angular/cli@11
    
  • 同步升级Angular Material与CDK:
    ng update @angular/material@11
    

后续升级至12-15

严格遵循小版本递进升级原则,避免跨大版本跳跃:

  1. 升级到12:ng update @angular/core@12 @angular/cli@12,同步升级Material
  2. 升级到13:ng update @angular/core@13 @angular/cli@13
  3. 升级到14:ng update @angular/core@14 @angular/cli@14
  4. 升级到15:ng update @angular/core@15 @angular/cli@15

4. Node.js版本适配

Angular 11要求Node.js >=12.14.1,你当前使用的12.11.1版本过低,建议升级到Node.js 14.x(LTS版本,兼容Angular 10至15全版本),避免版本不兼容引发的隐性问题。

额外注意事项

  • 升级时若出现依赖冲突,优先查看报错信息中的冲突包,手动调整版本后重新执行升级命令
  • 每一步升级完成后,执行npm install确保依赖安装完整,再用ng build验证项目构建是否正常

内容的提问来源于stack exchange,提问作者Curtis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 22:15:55