我刚把一个项目从Angular4升级到Angular6。但我现在在Visual Studio中的组件声明中遇到编译器错误。所以下面的基本声明用红色下划线:
@Component({
template: ''
})
滚动显示错误:
“{template:string}”类型的参数不能分配给参数
类型{template:
字符串}'
不管这个声明有多复杂,不管is是否有选择器、模板url或样式,或者其他什么,都无关紧要,错误仍然存在,只是时间更长。
现在这对应用程序的编译和运行没有影响,它只是在编辑器中显示为一个错误。所以当从角度4移动到角度6时,一定是typescript配置问题。在Visual Studio中加载Angular 4项目时,不会出现错误。
我使用的是Visual Studio 2015,最新版本的Angular CLI(6.2.3),Typescript 2.8.3和TsLint 5.11.0。
我对该项目的配置如下:
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"preserveWhitespaces": "off",
"strictPropertyInitialization": false,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2016",
"dom"
]
}
}
任何帮助都将不胜感激。
干杯
约翰