首页 > 解决方案 > 是否可以缩短角度库中的样式导入?

问题描述

按照 angular.io 上的文档,我创建了一个库。我们有一个样式指南,我们想在整个库中使用它,因此有一个包含一些共享样式和变量(例如调色板)的目录。

目前我正在通过相对导入从我的 component.scss 文件中访问这些文件。这是一种痛苦,因为它们很长而且很麻烦。在普通的 Angular 应用程序中,您可以使用stylePreprocessorOptionswithin来缩短它,angular.json但是对于库配置来说,情况并非如此,因为该字段是不允许的!

"architect": {
    "build": {
          "builder": "@angular-devkit/build-angular:ng-packagr",
          "options": {
            "project": "projects/component-library/ng-package.json"
            // usually you could define stylePreprocessorOptions here!
          }
    }
}

我遇到了另一种选择styleIncludePaths- https://github.com/ng-packagr/ng-packagr/blob/HEAD/docs/style-include-paths.md

但不幸的是,这并没有达到我的预期……可能是我自己的误解!为了澄清它,让我在我的 ng-package.json 中定义这个选项,但是导入路径无法在我的 component.scss 中正确解析

我的理想目标是改变进口途径,例如

@import '../../../../styles/theme'

@import 'theme'

对于图书馆来说,我可能会以错误的方式解决这个问题,但很难找到如何做到这一点的例子。任何帮助将不胜感激,如果您需要更多信息,请询问!

谢谢

标签: angularangular-library

解决方案


推荐阅读