我使用ng new dragonfly生成了一个新的Angular项目,其中包含以下参数:
Angular v7.2
Angular CLI v.7.3
NPM 6.7.0
Windows 10
我选择了包括路由和SCSS.
当我尝试使用npm start或ng serve启动项目时,在编译结束时会抛出以下错误:
ERROR in multi ./src/styles.sass Module not found: Error: Can't resolve 'C:\Users\S\angular\dragonfly\src\styles.sass' in 'C:\Users\S\angular\dragonfly' i 「wdm」: Failed to compile.
angular.json文件列出项目原理图下的scss:
"schematics": { "@schematics/angular:component": { "style": "sass" } },
Windows CLI中的构建失败,并且Bash CLI在同一台机器上以完全相同的方式失败.文件styles.scss已创建,仅包含默认注释.
我的配置是不是搞砸了,或者,这可能是一个报告的错误?
任何见解都会很棒.我测试使用CSS而不是SCSS生成项目,并且编译和运行没有问题.
更新:我的NodeJS安装已过时,版本为8.9.1.我现在已更新它并运行10.15.1.结果是一样的.
解决方法
确实是一个错误!官方问题是
https://github.com/angular/angular-cli/issues/13550,而
https://github.com/angular/angular-cli/issues/13551则介绍了如何解决这个问题.简而言之,修改angular.json的
"styles": [ "src/styles.sass" ],
用styles.scss替换styles.sass.
该问题已正式提交给Angular 7.3.在对我的配置文件进行一些挖掘之后,我在packager-lock.json中注意到了很多Angular 7.3版本. @ angular / core是7.2.3,但@ angular-devkit / core添加为7.3.0.