【发布时间】:2020-05-09 12:05:25
【问题描述】:
将我的 WebAPI 项目更新到 Angular 9 和 Typescript 3.8.3 后,我在构建应用程序时遇到错误:
然后我尝试执行一些命令,删除 node_modules 并执行 npm install,我尝试更新我的依赖项,所以我最终得到了 Angular 预览版 (10)。
我仍然有这些错误,我不确定接下来应该怎么做才能解决这个问题。
这里是 tsconfig.json:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"module": "es2020",
"moduleResolution": "node",
"experimentalDecorators": true,
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
}
}
什么可能导致这个问题?
编辑 我将 Angular 降级到版本 9,然后删除了 node_modules 并执行了 npm i 命令,但我仍然有错误。 这是我的 package.json 现在
{
"name": "score-app",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^9.1.6",
"@angular/cdk": "^9.2.3",
"@angular/common": "^9.1.6",
"@angular/compiler": "^9.1.6",
"@angular/core": "^9.1.6",
"@angular/forms": "^9.1.6",
"@angular/localize": "^9.1.6",
"@angular/material": "^9.2.3",
"@angular/material-moment-adapter": "^9.2.3",
"@angular/platform-browser": "^9.1.6",
"@angular/platform-browser-dynamic": "^9.1.6",
"@angular/router": "^9.1.6",
"@ng-bootstrap/ng-bootstrap": "^5.3.1",
"angular-bootstrap-datetimepicker": "^4.0.2",
"angular-md2": "^6.3.0",
"bootstrap": "^4.4.1",
"compressible": "^2.0.18",
"jquery": "^3.5.1",
"moment": "^2.25.3",
"ngx-material-timepicker": "^4.0.2",
"ngx-tempusdominus-bootstrap": "^1.0.1",
"ngx-toastr": "^10.2.0",
"popper.js": "^1.16.1",
"rxjs": "^6.5.5",
"tempusdominus-bootstrap-4": "^5.1.2",
"tempusdominus-core": "^5.0.3",
"tslib": "^1.11.2",
"zone.js": "~0.10.2"
},
"devDependencies": {
"@angular-devkit/build-angular": "^0.901.5",
"@angular/cli": "^9.1.5",
"@angular/compiler-cli": "^9.1.6",
"@angular/language-service": "^9.1.6",
"@types/jasmine": "^3.3.16",
"@types/jasminewd2": "^2.0.8",
"@types/jquery": "^3.3.38",
"@types/node": "^12.12.38",
"codelyzer": "^5.1.2",
"jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~5.0.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.5.3",
"protractor": "~5.4.4",
"ts-node": "~7.0.0",
"tslint": "~6.1.0",
"typescript": "^3.8.3"
}
}
【问题讨论】:
-
您的 package.json 指定 angular 10,而问题是关于 angular 9 ?你是怎么升级的?你关注angular update guide了吗?
-
是的,我在从 8 升级到 9 时遵循了该指南。然后,在遇到错误后,我执行了一些命令来更新 typescript,更新其他依赖项,并且我可能也将 Angular 更新到了版本 10。
-
你不应该使用 Angular 10。它还没有准备好用于生产
-
好的,但是这些错误开始在 Angular 9 上发生。
-
回滚到 Angular 9,然后开始调试。我已经将 2 个项目从 5 升级到 9。当我遇到错误时,那是因为 node_modules 有旧的依赖项。删除它,运行的
npm i修复了奇怪的错误。不要自己更新 typescript,只运行 ng-cli update 命令,如果仍然有错误,然后返回新错误和更新的 package.json。那么我们可以提供帮助。
标签: angular typescript