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

使用Angular CLI创建Angular 5应用时遭遇依赖错误求助

解决Angular CLI安装依赖错误(ETARGET: require-from-string@^1.1.0找不到)

你的问题核心是npm依赖解析出现了版本匹配故障——cosmiconfig依赖的require-from-string@^1.1.0版本无法被npm找到,这大概率是旧缓存干扰、npm版本过旧,或是Node.js与Angular CLI版本不兼容导致的。试试下面这些分步解决办法:

第一步:彻底清理npm缓存

缓存里的过时依赖信息很可能是罪魁祸首,先强制清空缓存:

npm cache clean --force

第二步:完全卸载全局Angular CLI残留

确保之前的CLI安装痕迹被彻底清除:

npm uninstall -g @angular/cli

同时手动检查并删除以下路径的残留文件(如果存在):

  • C:\Users\toddh\AppData\Roaming\npm\node_modules\@angular
  • C:\Users\toddh\AppData\Roaming\npm\ng(Angular CLI的全局命令文件)

第三步:升级npm到稳定版本

你的npm版本是5.6.0,属于较旧版本,存在不少依赖解析的已知bug,先升级npm:

npm install -g npm@latest

第四步:安装与Node.js兼容的Angular CLI版本

你的Node.js是v8.9.4,这个版本对Angular CLI 7+的兼容度不好,建议安装适配的6.x版本:

npm install -g @angular/cli@6.2.9

额外提醒:关于Angular版本迁移的正确姿势

之前直接替换src文件夹的操作忽略了Angular 4和5的配置差异——两个版本的package.json依赖、项目配置文件(.angular-cli.json)都有区别,直接替换src必然导致依赖不匹配。下次迁移代码时,建议:

  • 保留新项目的package.json和配置文件
  • 把旧项目src里的代码逐个迁移过来
  • 根据新项目的Angular版本,调整旧代码里的API差异(比如Angular 5对某些RxJS操作符的用法有变化)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:35:37