编译 Angular 6 项目时出现错误
I am getting an ERROR when compiling Angular 6 project
开始我的项目时 ng serve
我收到这个错误。
更新了我的 ts 但没有帮助。
这里是错误
ERROR in node_modules/@types/node/assert.d.ts(3,68): error TS1144: '{' or ';' expected.
node_modules/@types/node/assert.d.ts(57,68): error TS1144: '{' or ';' expected.
node_modules/@types/node/assert.d.ts(66,94): error TS1144: '{' or ';' expected.
node_modules/@types/node/assert.d.ts(66,101): error TS1005: ';' expected.
node_modules/@types/node/assert.d.ts(66,104): error TS1005: ';' expected.
node_modules/@types/node/assert.d.ts(68,98): error TS1144: '{' or ';' expected.
node_modules/@types/node/assert.d.ts(68,105): error TS1005: ';' expected.
node_modules/@types/node/assert.d.ts(68,108): error TS1005: ';' expected.
node_modules/@types/node/assert.d.ts(76,47): error TS1144: '{' or ';' expected.
node_modules/@types/node/assert.d.ts(76,53): error TS1005: ';' expected.
node_modules/@types/node/assert.d.ts(76,56): error TS1005: ';' expected.
node_modules/@types/node/assert.d.ts(106,61): error TS1005: ';' expected.
node_modules/@types/node/base.d.ts(10,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/base.d.ts(11,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/base.d.ts(12,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/base.d.ts(13,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.4/base.d.ts(10,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.4/base.d.ts(11,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.4/base.d.ts(12,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.4/base.d.ts(13,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.6/base.d.ts(10,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.6/base.d.ts(11,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.6/base.d.ts(12,1): error TS1084: Invalid 'reference' directive syntax.
node_modules/@types/node/ts3.6/base.d.ts(13,1): error TS1084: Invalid 'reference' directive syntax.`
这可能是您的 TypeScript 版本与某些 @types 包之间的不兼容问题。我将通过示例逐步引导您完成解决方案:
- 转到您的 package.json 并查找您的 TypeScript 和 @types 版本:
"devDependencies": {
// ...
"@types/deep-freeze": "0.1.1",
"@types/jasmine": "3.5.10",
"@types/lodash.isequal": "4.5.5",
"@types/lodash.mergewith": "4.6.6",
"@types/lodash.remove": "4.7.6",
"@types/lodash.some": "4.6.6",
// ...
"typescript": "2.9.2",
// ...
}
对于每个 @types 包 do:npm dist-tags @types/<your-types-package-name>
。您现在会看到一个 table,指示哪个 TypeScript 版本适用于每个 @types 包版本
将 package.json 中的 @types 更新为相应的版本
如果解决方案不起作用,请尝试将 TypeScript 更新到更新版本!
如果您在 package.json 文件中使用 "typescript": "~3.1.6",请更改 "@types/node" 版本到 "@types/node": "14.6.2", 在 package.json 文件中,这解决了我的问题..
开始我的项目时 ng serve
我收到这个错误。
更新了我的 ts 但没有帮助。
这里是错误
ERROR in node_modules/@types/node/assert.d.ts(3,68): error TS1144: '{' or ';' expected. node_modules/@types/node/assert.d.ts(57,68): error TS1144: '{' or ';' expected. node_modules/@types/node/assert.d.ts(66,94): error TS1144: '{' or ';' expected. node_modules/@types/node/assert.d.ts(66,101): error TS1005: ';' expected. node_modules/@types/node/assert.d.ts(66,104): error TS1005: ';' expected. node_modules/@types/node/assert.d.ts(68,98): error TS1144: '{' or ';' expected. node_modules/@types/node/assert.d.ts(68,105): error TS1005: ';' expected. node_modules/@types/node/assert.d.ts(68,108): error TS1005: ';' expected. node_modules/@types/node/assert.d.ts(76,47): error TS1144: '{' or ';' expected. node_modules/@types/node/assert.d.ts(76,53): error TS1005: ';' expected. node_modules/@types/node/assert.d.ts(76,56): error TS1005: ';' expected. node_modules/@types/node/assert.d.ts(106,61): error TS1005: ';' expected. node_modules/@types/node/base.d.ts(10,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/base.d.ts(11,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/base.d.ts(12,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/base.d.ts(13,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.4/base.d.ts(10,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.4/base.d.ts(11,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.4/base.d.ts(12,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.4/base.d.ts(13,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.6/base.d.ts(10,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.6/base.d.ts(11,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.6/base.d.ts(12,1): error TS1084: Invalid 'reference' directive syntax. node_modules/@types/node/ts3.6/base.d.ts(13,1): error TS1084: Invalid 'reference' directive syntax.`
这可能是您的 TypeScript 版本与某些 @types 包之间的不兼容问题。我将通过示例逐步引导您完成解决方案:
- 转到您的 package.json 并查找您的 TypeScript 和 @types 版本:
"devDependencies": {
// ...
"@types/deep-freeze": "0.1.1",
"@types/jasmine": "3.5.10",
"@types/lodash.isequal": "4.5.5",
"@types/lodash.mergewith": "4.6.6",
"@types/lodash.remove": "4.7.6",
"@types/lodash.some": "4.6.6",
// ...
"typescript": "2.9.2",
// ...
}
对于每个 @types 包 do:
npm dist-tags @types/<your-types-package-name>
。您现在会看到一个 table,指示哪个 TypeScript 版本适用于每个 @types 包版本将 package.json 中的 @types 更新为相应的版本
如果解决方案不起作用,请尝试将 TypeScript 更新到更新版本!
如果您在 package.json 文件中使用 "typescript": "~3.1.6",请更改 "@types/node" 版本到 "@types/node": "14.6.2", 在 package.json 文件中,这解决了我的问题..