如何使用angular4在组件标签中设置粗体和斜体属性

时间:2018-02-28 07:17:01

标签: jquery css angularjs angularjs-directive angular-components

我有一个内部组件,有一个模板和选择器 这是我的组件

@Component({
    selector: 'labelnumeric',
    template: '<label>hello</label>'
})

export class LabelNumeric
{

}

我想动态地将标签添加到标签粗体和斜体,以便我该怎么做?

2 个答案:

答案 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
  }