我们可以为Angular项目中的不同组件使用不同的CSS语言/预处理器吗

时间:2018-11-03 08:54:28

标签: css angular sass

假设他们是在同一角度项目上工作的三位开发人员,每个人都在开发不同的组件,但是在初始化过程中,将“ scss”设置为首选样式语言,但是现在,一个开发人员希望使用手写笔而不是“ scss”,但其他人对“ scss”感到满意。

因此可以对角度项目中的不同组件使用不同的样式语言。

2 个答案:

答案 0 :(得分:2)

这将起作用。您可以使用sass/scss, less and stylus

只需对要使用的组件使用所需的样式预处理器。一个例子:

less-example.component.ts

@Component({
  selector: 'less-example',
  styleUrls: [
    './less-example.less'
  ],
  templateUrl: './less-example.component.html'
})
export class LessExample {

}

less-example.less

@color: yellow;

h1 {
  color: @color;
}

scss-example.component.ts

import {Component} from '@angular/core';

@Component({
  selector: 'scss-example',
  templateUrl: './scss-example.component.html',
  styleUrls: [
    './scss-example.scss'
  ]
})
export class ScssExample {

}

scss-example.scss

  $color: green;

  h1 {
    color: $color;
  }

您可以在运行中here看到它

答案 1 :(得分:0)

是的,您可以generate component options

您可以通过添加--styleext=[file extension]来实现,就像ng g c test --styleext=scss那样,您只需为要使用的预处理器指定--styleext option,即可为生成的每个组件执行此操作。