模块构建失败:@import '~@angular/material/theming'

3

我的Angular 4.1.1应用程序是使用Angular CLI 1.0.2构建的,但出现了以下错误导致无法正常工作:

Module build failed:                                                                                                                                   
@import '~@angular/material/theming';                                                                                                                  
^                                                                                                                                                      
      File to import not found or unreadable: ~@angular/material/theming.                                                                              
Parent style sheet: /home/jan/src/fm-repos/fm-ui/src/app/assets/css/theme_imports.scss                                                                 
      in /home/jan/src/fm-repos/fm-ui/src/app/assets/css/theme_imports.scss (line 1, column 1)                                                         
 @ ./src/app/identity/sign-in/sign-in.component.ts 54:17-52                                                                                            
 @ ./src/app/identity/identity.module.ts                                                                                                               
 @ ./src/app/app.module.ts                                                                                                                             
 @ ./src/main.ts                                                                                                                                       
 @ multi webpack-dev-server/client?http://localhost:4200 ./src/main.ts                                                                                 
2个回答

4
这是Angular CLI的sass-loader依赖中的一个漏洞。您可以通过更改推荐的主题导入来解决此问题:
@import '~@angular/material/theming';

to:

@import '~@angular/material/_theming.scss';

详情请参见sass-loader #447


1
这仍然是在一个Angular 8项目中的修复...为什么文档这么错误?!! - undefined

3
如果其他人也遇到了这个问题,另一个解决方案可能是将绝对路径 ~@angular/material/theming 改为相对路径 ../../../node_modules/@angular/material/theming,从导入 SCSS 文件开始计算。 ../ 的数量取决于您的文件夹结构。

1
通过使用相对路径解决了问题,绝对路径对我来说不起作用,谢谢 @Mark Langer - undefined
不要使用特定于开发环境的路径来设置依赖项。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接