在Angular 6-7中,可以使用ViewEncapsulation.emulated来为组件的样式添加前缀。下面是一个示例解决方法:
import {Component, ViewEncapsulation} from '@angular/core';
@Component({
selector: 'app-example',
templateUrl: './example.component.html',
styleUrls: ['./example.component.css'],
encapsulation: ViewEncapsulation.Emulated // 设置ViewEncapsulation为emulated
})
export class ExampleComponent {
// 组件代码
}
app-example h1 {
color: red;
}
Example
这样,h1元素的颜色将仅在ExampleComponent组件中生效,并且将自动添加前缀以避免与其他组件中的样式冲突。
注意:ViewEncapsulation.emulated是Angular的默认行为,因此如果没有显式设置encapsulation属性,它将默认为emulated。