angular動態綁定樣式以及改變UI框架樣式的方法


一: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,就可以改變框架定義好的樣式

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM