我目前正在构建一个小型 Angular 元素,我在其中使用较少的样式。
我想将样式分解到远离组件的单独文件夹中,并改为使用一个主要的导入文件:main.less,它只包含来自其周围样式表的导入。 例如:
buttons/buttons.less
header/header.less
hero/hero.less
这些是在 main.less 中导入的。 这意味着我的组件不使用 styleURL 属性,而是依赖于全局样式表。
在我的 angular.json 中,我将样式指向它,如下所示:
"styles": [
"src/app/less/main.less"
]
当我运行 ng serve 时,它工作得很好,但是当我在 buttons.less 中更改某些内容时,它会刷新页面(如预期的那样),但不会应用更改。这适用于 main.less 中的每个导入文件。 但是,如果我直接在 angular.json 的“样式”中添加 button.less 文件,它就像一个魅力。 另外,如果我直接在 main.less 文件中添加样式,例如添加这个,那行有效:
body {
background-color: red;
}
我做错了什么,为什么它不处理我的导入?如果我重新启动 Angular 服务器,它会重新编译文件和 tada.wav,添加更改。 不会通过此记录任何错误。
最佳答案
这似乎与 Angulars github 页面上报告的 less-loader 4.x.x 有关。
降级到 less-loader 3.x.x 解决了这个问题。 只需使用:
npm install --save-dev less-loader@3.0.0
多田.wav
关于css - .less 文件中的 Angular 4 导入不会在更改时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50568822/