微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-Angular 6-更少的CSS导入不再起作用

我想重用Angular 5项目中使用Less的某些结构.在这个旧项目中,我可以使用以下代码从组件内部简单地加载.less文件

@import '~app/shared/less/bootstrap';

这将加载:

/my-app/src/app/shared/less/bootstrap.less

现在,我有一个空白的Angular 6项目,该项目还配置为使用Less作为预处理器:

ng new my-app --routing --style less

从angular.json中提取

"my-app": {
  "prefix": "app",
  "schematics": {
    "@schematics/angular:component": {
      "styleext": "less"
    }
  },
  "architect": {
    "build": {
      "options": {
        "styles": [
          "src/styles.less",
          "app/shared/less/styles.less"

但是线

@import '~app/shared/less/bootstrap';

…编译时出现错误

Failed to compile.
./src/app/shared/component/some.component.less
Module build Failed:
@import ‘~app/shared/less/bootstrap’;
^
‘~app/shared/less/bootstrap’ wasn’t found.

我也尝试过:

@import '.app/shared/less/bootstrap';
@import '.src/app/shared/less/bootstrap';
@import '~app/shared/less/bootstrap.less';

……没有任何运气.

我忘记配置什么了吗?

解决方法:

在angular 6中,您必须将所有文件导入到main(在您的情况下为src / styles.less)css文件中:

在angular.json中只放:

  "styles": [
          "src/styles.less"
]

在styles.less中(使用/之前的应用程序导入所需的所有文件):

@import './app/shared/less/bootstrap.less';

在这里查看我对CSS的答复:7000

要编辑./src/app ..:

@import './src/app/...'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐