【问题标题】:How to install a specific version of Angular with Angular CLI?如何使用 Angular CLI 安装特定版本的 Angular?
【发布时间】:2023-03-28 21:48:02
【问题描述】:

我搜索了 google 和 angular cli 文档,但找不到使用 Angular CLI 安装特定版本 Angular 的任何方法。有可能吗?

【问题讨论】:

  • 没有直接的方法,但是您可以创建一个新项目,然后将package.json 中的版本更改为您想要的任何版本。
  • 你可以检查这个答案stackoverflow.com/a/52067532/2275011它对我有用

标签: angular angular-cli


【解决方案1】:

使用CMD以管理员身份运行,命令如下

npm i @angular/cli@11.2.18
npm i -g @angular/cli@11.2.18

npm install @angular/cli@11.2.18
npm install -g @angular/cli@11.2.18

获取这样的存在版本https://www.npmjs.com/package/@angular/cli/v/12.2.16

【讨论】:

    【解决方案2】:

    这对我有用。
    在文件夹“C:\Users\YourUser\source\repos”中打开 CMD

    npm uninstall -g @angular/cli 
    npm cache clean
    npm cache verify
    npm install -g @angular/cli
    

    然后再试一次。

    【讨论】:

      【解决方案3】:
      npm install -g @angular/cli@6.1.1
      ##Then you can check the version by##
      ng --version
      

      https://www.npmjs.com/package/@angular/cli/v/12.1.0

      【讨论】:

        【解决方案4】:

        您可以只使用特定版本的package.json 并执行npm install,它将安装该版本。

        您也不需要依赖angular-cli 来开发您的项目。

        【讨论】:

        • 但是您应该依赖于 CLI IMO。顺便说一句,现在不再是 angular-cli,而是 angular/cli。另外,它是npm install @angular/{common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router,animations}@latest
        • 如你所说编辑 package.json 文件,但是这个 package.json 文件在哪里?
        • 您可以通过执行 npm init 自动添加 package.json 或在项目的根文件夹中手动创建它
        • package.json改版后,一定要执行npm install
        【解决方案5】:

        angular/cli 版本及其安装的angular/compiler 版本:

        • 1.0 - 1.4.x = ^4.0.0
        • 1.5.x = ^5.0.0
        • 1.6.x - 1.7.x = ^5.2.0
        • 6.x = ^6.0.0
        • 7.x = ^7.0.0

        可以通过查看repositorynewer repositorymaster repository 中的angular/clipackage.json 文件来确认。必须安装特定的 cli 版本才能获得特定的角度版本:

        npm -g install @angular/cli@1.5.* # For ^5.0.0
        

        【讨论】:

        • 我在我的计算机上全局安装了 Angular 11,但我需要在 6 中创建一个新项目。根据上述信息,我分三个步骤完成此操作:1)创建一个新目录 2)npm安装@angular/cli@6.* 3) ng new [angular-six-project-name]
        • 感谢您的详细说明。
        【解决方案6】:

        我的计算机上全局安装了 Angular 11,但我需要在 Angular 6 中创建一个新项目。根据 Robert Brisita 对此问题的回答中的 CLI 版本到 Angular 版本信息,这些步骤为我完成了:

        created [angular-six-dir]
        cd [angular-six-dir]
        npm install @angular/cli@6.* 
        ng new [angular-six-project-name]
        

        【讨论】:

        • 这很好用,但是在这样做之后,最好删除额外的外部package-lock.jsonnode_modules 文件夹。 (在 Angular 项目之外创建的额外项目。)
        • 这加上@EliezerBerlin 提醒 = 合乎逻辑并且效果很好。
        【解决方案7】:

        npx @angular/cli@10 new my-poject

        您可以将 10 替换为您选择的版本...无需卸载您现有的 CLI!现在才知道...

        【讨论】:

        • 这个答案应该有更多的选票。更糟糕的是,您可能会收到error: npm version 7.20.5 detected. The Angular CLI currently requires npm version 6.。这可以通过npm install --global npm@6 解决
        【解决方案8】:

        npm i -g @angular/cli@x.y.z

        x,y,z-->你想要的版本号

        【讨论】:

        • 使用角度 cli
        【解决方案9】:

        我建议使用NVM 保留不同版本的node 和npm,然后安装兼容的angular-cli

        【讨论】:

          【解决方案10】:

          使用以下命令安装和降级特定版本。
          卸载cli

          npm uninstall -g @angular/cli
          

          清理 npm 缓存

           npm cache clean --force
          

          安装 cli

          npm install -g @angular/cli@_choose_your_version
          

          【讨论】:

            【解决方案11】:

            是的,可以使用 npm install a specific version of Angular

            npm install -g @angular/cli@8.3.19
            

            接下来,您需要使用 ng new 命令根据您安装 CLI 时使用的特定版本创建一个 Angular 项目:

            ng new your-project-name
            

            这将生成一个基于 Angular v8.3.19 的项目,该版本是在安装 Angular CLI 时指定的版本。

            【讨论】:

              【解决方案12】:

              如果您仍然遇到问题并且正在使用 nvm,请确保设置 nvm 节点环境。

              选择安装的最新版本。要查看版本,请使用nvm list

              nvm use node
              sudo npm remove -g @angular/cli
              sudo npm install -g @angular/cli
              

              或安装特定版本使用:

              sudo npm install -g @angular/cli@7.2
              

              如果您目录权限错误,请使用:

              sudo npm install -g @angular/cli@7.2 --unsafe-perm
              

              【讨论】:

              • 谢谢,但我认为你的回答无关紧要。
              【解决方案13】:

              在命令提示符下执行此命令,一切顺利

              npm install -g @angular/cli@version_name
              

              【讨论】:

                【解决方案14】:

                编辑 #2(2017 年 7 月 2 日)

                如果您现在安装 angular cli,您可能会拥有 angular cli 的新名称 @angular/cli,因此您需要使用卸载它

                npm uninstall -g @angular/cli
                

                并按照上面的代码。我仍然对此表示赞同,因此我为那些出于某些原因想要使用旧版本的人更新了我的答案。


                编辑#1

                如果您真的想使用 cli 使用以前版本的 Angular 创建一个新项目,请尝试在最终版本之前降级 angular-cli。 比如:

                npm uninstall -g angular-cli
                npm cache clean
                npm install -g angular-cli@1.0.0-beta.32
                

                首字母

                您可以在 package.json 中更改 Angular 的版本。我猜你想使用旧版本的 angular,但我建议你使用最新版本。使用:

                ng new app-name
                

                将始终使用最新版本的 angular。

                【讨论】:

                • 我使用的 BaaS 提供商仍然不支持 ng4。
                • @sajad 真不幸。我认为您可以从 cli 创建以前版本的 angular。我会编辑我的答案
                • @brijmq 我个人从未见过 angular-cli“总是使用最新版本的 angular”。例如,现在如果你全局更新 cli (1.1.3) 并用它创建一个新项目,即使最新的是 4.2.4,你也会得到 angular 4.0.0。那么我多年来一直试图弄清楚的是版本是否会随着新的 cli 版本定期更新?
                • @epiphanatic 我很抱歉,很抱歉造成混乱。在进行 cli 更新时,cli 将使用最新版本的 angular。如果要更新它,您需要在应用程序的 package.json 上手动更新它。 angular 中更新的发布比 angular-cli 快得多。查看此链接以了解更多信息angularjs.blogspot.com/2016/10/…。希望它能消除你的困惑
                • 只是补充一点 npm cache clean 对我不起作用,我不得不使用 npm cache clean --force
                【解决方案15】:

                为了回答您的问题,假设您对特定的 angular 版本感兴趣,而不是特定的 angular-cli 版本(angular-cli 只是一个工具毕竟)。

                合理的做法是让您的 angular-cli 版本与您的 angular 版本保持一致,否则您可能会遇到不兼容问题。因此,获得正确的 angular-cli 版本将引导您获得所需的 angular 版本。

                根据这个假设,您的问题不是关于 angular-cli,而是关于 npm

                这里是要走的路:

                [步骤 0 - 可选] 如果您不确定您的环境中安装的 angular-cli 版本,请将其卸载。

                npm uninstall -g @angular/cli
                

                然后,运行(可能需要 --force 标志)

                npm cache clean
                

                或者,如果您使用的是 npm > 5。

                npm cache verify
                

                [步骤 1] 安装 angular-cli 特定版本

                npm install -g @angular/cli@wished.version.here
                

                [步骤 2] 创建项目

                ng new you-app-name
                

                生成的白色应用将以所需的 angular 版本创建。

                注意:我没有找到任何显示 angularangular-cli 兼容性矩阵的页面。所以我想知道应该安装哪个 angular-cli 版本的唯一方法是尝试各种版本,创建一个新项目并检查 package.json 以查看哪个 angular使用版本。

                angular versions changelog 这是来自 github reposition 的变更日志,您可以在其中查看可用版本和差异。

                希望对你有帮助

                【讨论】:

                • 在按照您的步骤操作时,在 npm install -g @angular-cli@1.7.4 期间出现类似 npm ERR 的错误!无效的包名“@angular-cli”:名称只能包含 URL 友好字符
                • @MPPNBD 它应该是 npm install -g @angular/cli@1.7.4
                • @avi.elkharrat ,对不起,我错过了。 npm install -g @angular/cli@1.7.4 为我工作。非常感谢 avi.elkharrat
                • npm uninstall -g @angular/cli -> 运行这个cmd后,发现angular还在。
                • 我是在 Windows 桌面上完成的。没有 sudo。
                【解决方案16】:

                使用以下命令安装特定版本。说你要安装 angular/cli 版本 1.6.8 然后输入以下命令:

                sudo npm install -g @angular/cli@1.6.8
                

                这将安装angular/cli version 1.6.8

                【讨论】:

                • 不回答问题。
                【解决方案17】:

                在 package.json 的“依赖项”部分指定您想要的版本,然后从控制台/终端的根项目文件夹中运行:

                npm install
                

                比如下面会专门安装v4.3.4

                "dependencies": {
                    "@angular/common": "4.3.4",
                    "@angular/compiler": "4.3.4",
                    "@angular/core": "4.3.4",
                    "@angular/forms": "4.3.4",
                    "@angular/http": "4.3.4",
                    "@angular/platform-browser": "4.3.4",
                    "@angular/platform-browser-dynamic": "4.3.4",
                    "@angular/router": "4.3.4",
                  }
                

                您还可以在版本号中添加以下修饰符,以改变您需要的版本的具体程度:

                插入符号 ^

                将您更新到最新的主要版本,由第一个数字指定:

                ^4.3.0
                

                将加载最新的 4.x.x 版本,但不会加载 5.x.x

                波浪号 ~

                将您更新到最新的次要版本,由第二个数字指定:

                ~4.3.0
                

                将加载最新的 4.3.x 版本,但不会加载 4.4.x

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 2018-07-03
                  • 2022-01-17
                  • 2018-05-17
                  • 2017-04-22
                  • 1970-01-01
                  • 2021-05-21
                  • 1970-01-01
                  • 2019-02-19
                  相关资源
                  最近更新 更多