首页 > 解决方案 > 无法使用节点模块中的 SASS mixin 构建 Angular 库

问题描述

设置:带有库的 Angular 9 工作区、一个测试应用程序和使用 CDK 的故事书_overlay.scss.scss文件中包含@use.

.storybook/
node_modules/
projects/
- library/
  - src/
    - lib/
      - component/
        component.scss // `@use`s `_overlay.scss`
  ng-package.json
- test-app/
angular.json

问题:在测试应用程序和故事书编译时使用覆盖 sass 混合@use "~@angular/cdk/overlay",但 ng-packagr 找不到_overlay.scss.

ERROR: Can't find stylesheet to import.
  ╷
2 │ @use "~@angular/cdk/overlay";
  │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵
  projects\library\src\lib\component\component.scss 2:1  root stylesheet
An unhandled exception occurred: Can't find stylesheet to import.

解决方法:

问:如果设置了波浪号,那么导入是否应该~实际工作?这是 ng-packagr 的问题吗?"styleIncludePaths": ["../../node_modules/"]ng-package.json

标签: angularsassng-packagr

解决方案


推荐阅读