代码之家  ›  专栏  ›  技术社区  ›  guilhebl

角度编译器需要typescript>=2.7.2和<2.8.0,但却找到了2.8.3。

  •  36
  • guilhebl  · 技术社区  · 6 年前

    我开始在我的Angular应用程序上得到这个错误:

    角度编译器需要typescript>=2.7.2和<2.8.0但2.8.3 而是找到了

    当我尝试将typescript降级到正确的版本时,执行以下操作:

    npm install -g typescript@2.7.2 它说更新了一个包。

    当我使用 npm view typescript version 我仍然得到2.8.3

    我甚至尝试完全用 npm uninstall -g typescript

    但当我再次验证typescript版本时 NPM视图类型脚本版本 我仍然得到2.8.3

    正确清除和恢复typescript到2.7.2等早期版本的命令是什么?

    我正在运行节点v10.0.0和npm v6.0.1

    当我跑步时 npm list -g typescript 我看到了2.7.2版的正确版本,但仍然是2.8.3版以某种方式安装在全球。

    9 回复  |  直到 6 年前
        1
  •  38
  •   Eliya Cohen    6 年前

    你应该这么做 npm install typescript@'>=2.7.2 <2.8.0' . 这将安装项目所需的正确类型脚本。确保在你的角度项目中运行这个。

    在Windows上,应该使用双引号而不是单引号,如下所示:

    npm install typescript@">=2.7.2 <2.8.0"
    

    否则,你会得到 The system cannot find the file specified. .

        2
  •  10
  •   knnhcn    6 年前

    在项目文件夹中再次运行 npm install typescript@2.7.2 如本文所述:

    Want to upgrade project from Angular v5 to Angular v6

    那么它就可以工作了。

        3
  •  5
  •   Ilya Afanasyev    6 年前

    我做了下一步:

    • 移除package-lock.json;
    • npm安装-g——保存typescript@2.7.2;
    • npm uninstall-g——保存typescript@2.9.2;
    • 在package.json中,“devdependencies”部分更新了字符串,其中typescript为“typescript”:“~2.7.2”。

    毕竟,在项目的终端Ng服务中运行——开放(我一直在使用IDEA 2018.1)。

        4
  •  2
  •   Andres SoN    6 年前

    我做了以下工作:

    • 手动删除文件夹节点\模块
    • 手动删除文件package-lock.json
    • 在package.json文件中,确保将typescript的依赖性设置为

       "typescript": "2.7.2"
      
    • 运行npm cache clean-f

    • 运行NPM安装

    这对我很有用。

        5
  •  1
  •   Demven Weir    6 年前

    安装“@angular/compiler cli”:“7.0.0-beta.4”解决了这个问题。 我用“typescript”:“3.0.3”。

        6
  •  1
  •   Dale K Mureinik    5 年前

    要升级,请在终端中运行以下命令。

    • 安装最新版本的NPM

      npm install npm@latest -g
      
    • 运行审核

      npm audit  
      
    • 更新NPM

      npm update
      
    • 运行NPM运行脚本。

      npm start
      

    现在编译器准备好了。

        7
  •  0
  •   Rarblack Kev1n91    6 年前

    降级至 typescript 2.9.2 (npm install typescript@2.9.2) re-running ng update --all 仍然会产生错误(两次):

    Package "@angular/compiler-cli" has an incompatible peer dependency to "typescript" (requires ">=2.7.2 <2.10", would install "3.1.3"
    Verified that version 2.9.2 of typescript was in node_modules.
    
        8
  •  0
  •   bakke2ooo    5 年前

    在更新到Macos Mojave之后,也出现了同样的问题。 通过手动删除node_modules和package_lock.json修复了它,package.json中的package.json从“typescript”:“~2.7.2”更改为“typescript”:“~2.8.0”,并运行了NPM安装。

        9
  •  0
  •   Deva    5 年前

    这只是因为在你的项目中 package.json 文件具有

    如。 "devDependencies": {"typescript": "~2.8.3" }

    在安装了Angular CLI的计算机中 "typescript": "2.7.2" 版本。

    你可以查一下这个 ng -v ng v .

    所以,打开 包.json 更新typescript版本 run npm install 你就完了。