我开始在我的Angular应用上收到此错误:
Angular Compiler需要TypeScript> = 2.7.2和< 2.8.0但2.8.3 被发现了
当我尝试将打字稿降级到正确的版本时:
npm install -g typescript@2.7.2
它说更新了1个包。
当我验证打字稿版本时使用
npm view typescript version
我仍然得到2.8.3
我甚至尝试使用npm uninstall -g typescript
但是当我再次验证打字稿版本时
npm view typescript version
我仍然得到2.8.3
有哪些命令可以正确清除和恢复先前版本的打字稿,例如2.7.2?
我正在运行节点v10.0.0和npm v6.0.1
当我运行npm list -g typescript
时,我看到正确的版本来自2.7.2但仍然以某种方式安装了2.8.3版本
答案 0 :(得分:29)
您应该执行npm install typescript@'>=2.7.2 <2.8.0'
。这将安装项目需要的正确打字稿。确保在Angular项目中运行它。
在Windows上,应使用双引号而不是单引号,例如:
npm install typescript@">=2.7.2 <2.8.0"
否则,您将获得The system cannot find the file specified.
。
答案 1 :(得分:10)
在项目文件夹中再次运行npm install typescript@2.7.2
,如下所示:
Want to upgrade project from Angular v5 to Angular v6
然后它应该工作。
答案 2 :(得分:4)
我做了下一步:
毕竟以上所有在项目的终端运行服务 - 开(我一直在使用IDEA 2018.1)。
答案 3 :(得分:1)
我做了以下事情:
在package.json文件中,请确保将TypeScript的依赖项设置为
"typescript": "2.7.2"
运行npm cache clean -f
对我有用。
答案 4 :(得分:1)
安装“ @ angular / compiler-cli”:“ 7.0.0-beta.4”解决了此问题。 我使用“打字稿”:“ 3.0.3”。
答案 5 :(得分:0)
降级到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.
答案 6 :(得分:0)
在更新到macOS Mojave之后出现了相同的问题(还有许多其他问题)。 通过手动删除node_modules和package_lock.json对其进行了修复,将package.json从“ typescript”:“〜2.7.2”更改为“ typescript”:“〜2.8.0”,然后运行npm install。
答案 7 :(得分:0)
要升级,请在终端中运行以下命令。
安装最新版本的NPM
npm install npm@latest -g
运行审核
npm audit
更新NPM
npm update
运行NPM运行脚本。
npm start
现在您的编译器已准备就绪。
答案 8 :(得分:0)
这仅仅是因为在您的项目中package.json
文件具有
例如"devDependencies": {"typescript": "~2.8.3"
}
,并且在安装了cli的机器上具有"typescript": "2.7.2"
版本。
您可以通过ng -v
或ng v
进行检查。
因此,只需打开 package.json 更新您的打字稿版本和run npm install
即可。