欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

angular动态绑定样式以及改变UI框架样式的方法

程序员文章站 2022-05-04 14:02:53
一:angular动态绑定样式 举个栗子: .hide_tr{ display: none !impo ......

一:angular动态绑定样式

举个栗子:

<tr *ngfor="let datatr of tabledata;let i = index" [formgroupname]="i" [ngclass]='ishideclass(i)'>

  ishideclass(index){
    const data = this.tabledata[index];
    // if(data['532411351520251904'].value.valuetext===''&&data['532411588670394368'].value.valuetext===''
    // &&data['532411670509654016'].value.valuetext==='') {
    //   return 'hide_tr'
    // }
    let arr = [];
    for (let i in data) {
      arr.push(data[i]);
    }
    if(arr.every((val,idx)=>{
       return val.value.valuetext === ''
    })){
      return 'hide_tr'
    }

  }
hide_tr是类名,
.hide_tr{
display: none !important;
}

 

解释:ngclass要绑定的类名会在tr根据数据循环生成html的过程中调用组件中定义的ishideclass()方法,并把i(index)带过去让方法使用
根据方法逻辑返回的类名去绑定写好的样式ishideclass(index){return 'hide'},这时候这个ngclass就绑定上了hide这个类名的样式

二:angular改ui框架样式(例子是蚂蚁金服的ui框架)

例子:

::ng-deep{
    .ant-card-head-title{
      font-weight: bold;
    }
    .ant-table-placeholder{
      display: none;
    }
    .ant-card-body {
      padding-bottom: 0px
    }
    .hide_tr{
      display: none !important;
    }
  }

 

在要改的样式前面加上::ng-deep,就可以改变框架定义好的样式