我有一个内部组件,有一个模板和选择器 这是我的组件
@Component({
selector: 'labelnumeric',
template: '<label>hello</label>'
})
export class LabelNumeric
{
}
我想动态地将标签添加到标签粗体和斜体,以便我该怎么做?
答案 0 :(得分:1)
试试这样。您必须在css中定义.class-bold
。在装饰者或外部。
@Component({
selector: 'labelnumeric',
template: '<label #mylabel>hello</label>'
})
export class LabelNumeric implements OnInit {
@ViewChild('mylabel') label;
@Input() isBold: boolean = false;
ngOnInit() {
if(this.isBold){
this.label.nativeElement.classList.add('class-bold');
}
}
}
并使用它:<labelnumeric [isBold]="true"></labelnumeric>
如果可行,您可以相应地为斜体定义@Input。
答案 1 :(得分:0)
您可以使用ngClass
。
@Component({
selector: 'labelnumeric',
template: ' <label [ngClass]="{'font-italic': someCondition, 'font-bold' : someOtherCondition}">hello</label>'
})
export class LabelNumeric
{
}
在某些条件下分配这两个类,然后使用css设置font-style和font-weight。
.font-italic {
font-style: italic;
}
.font-bold {
font-weight: bold
}