如何使用CLI创建对应Node版本的指定Ionic-Angular项目?
适配指定Node/Angular/Ionic版本创建Ionic-Angular项目解决方案
需求对应版本表
| Node版本 | Angular版本 | Angular发布日期 | Ionic版本 |
|---|---|---|---|
| 12.16.x | 11.0.0 | 2020-11-11 | 5 |
| 14.20.x | 15.2.0 | 2023-02-23 | 6 |
| 16.14.x | 16.2.0 | 2023-06-13 | 7 |
问题重现
尝试通过NVM切换Node版本后,全局安装对应版本Ionic CLI时失败,执行npm i -g @ionic/cli@5出现错误:
npm ERR! code ETARGET npm ERR! notarget No matching version found for @ionic/cli@5. npm ERR! notarget In most cases you or one of your dependencies are requesting npm ERR! notarget a package version that doesn't exist.
错误原因
Ionic CLI的包名在版本6发生了变更:
- Ionic 5及更早版本的包名为
ionic,而非@ionic/cli - Ionic 6及以后版本才使用
@ionic/cli作为包名
分版本正确创建步骤
1. Node 12.16.x + Angular 11 + Ionic 5
- 切换Node版本:
nvm use 12.16 - 安装对应Angular CLI:
npm i -g @angular/cli@11 - 安装Ionic 5 CLI:
npm i -g ionic@5 - 创建Ionic-Angular项目:
ionic start Ionic5Node12Project blank --type angular
2. Node 14.20.x + Angular 15 + Ionic 6
- 切换Node版本:
nvm use 14.20 - 安装对应Angular CLI:
npm i -g @angular/cli@15 - 安装Ionic 6 CLI:
npm i -g @ionic/cli@6 - 创建Ionic-Angular项目:
ionic start Ionic6Node14Project blank --type angular
3. Node 16.14.x + Angular 16 + Ionic 7
- 切换Node版本:
nvm use 16.14 - 安装对应Angular CLI:
npm i -g @angular/cli@16 - 安装Ionic 7 CLI:
npm i -g @ionic/cli@7 - 创建Ionic-Angular项目:
ionic start Ionic7Node16Project blank --type angular
额外注意事项
- 创建项目后若出现依赖安装异常,可删除
node_modules和package-lock.json文件,执行npm install重新安装 - 确保NVM切换Node版本后,全局npm环境已同步切换,避免不同版本CLI冲突
内容的提问来源于stack exchange,提问作者Gydunhn_
相关产品推荐
相关产品推荐

