我将旧的角度项目迁移到角度
运行项目时,编译成功,但在控制台中显示以下错误。
未捕获的错误:预期“样式”为字符串数组。 在assertArrayOfStrings(compiler.js:2181) 在CompileMetadataResolver.push ../ node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getNonNormalizedDirectiveMetadata (compiler.js:10373) 在CompileMetadataResolver.push ../ node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver._getEntryComponentMetadata
Angular.json
"styles": [
{
"input": "node_modules/@angular/material/prebuilt-themes/indigo-pink.css"
},
"src/styles.css"
],
"scripts": [],
Component.ts
@Component({
selector: 'app-root',
templateUrl: 'app.component.html',
styleUrls: ['app.component.scss']
})
我做错了。
答案 0 :(得分:1)
好吧,这正是字面上的意思:样式应该是字符串数组。代替
{
"input": "node_modules/@angular/material/prebuilt-themes/indigo-pink.css"
},
"src/styles.css"
做
"node_modules/@angular/material/prebuilt-themes/indigo-pink.css",
"src/styles.css"
答案 1 :(得分:0)
在样式数组中,具有键为“输入”的对象数组,
它应该是一个简单的字符串数组
尝试这样:
"styles": [
"node_modules/@angular/material/prebuilt-themes/indigo-pink.css",
"src/styles.css"
],
"scripts": [],
并在组件装饰器中使用./
前缀文件名,如下所示:
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})