element -ui之


  在vue的后台項目中,我們經常會用到element-ui這個ui框架,里邊很多的組件都是很好用的,特別是表格  el-table  組件,除了常用到的 el-table-column中的 prop、width、label、以及align之外我們還經常會用到slot進行自定義顯示的內容;

  例如: <el-table-column>

       <template slot-scope='scope'>

        {{scope.row.type?scope.row.type: '---'}}

       </temloate>

     </el-table-column>  

  在使用slot-scope的時候需要注意,如果表格有經過 v-if 進行切換的話,這樣對slot-scope的數據渲染會有一定的影響,致使不能加載,所以最好使用  v-show 來進行切換

 

  如果在表格寬度比較寬的情況下,會遇到某一個單元格的寬度比較小,而不成單行容下內容的情況,這時候我們若想讓其單行隱藏成  ... 的形式,那么我們可以給這一列單獨加上                          :show-overflow-tooltip = 'true',當我們把鼠標放在上邊的時候就會有類似title的屬性作用,彈出整個的單元格內容;

 

  此外,有時候我們在使用  <el-table>的時候,若要設置表頭的樣式,我們可以使用  :header-cell-style='{  }',來進行設定;

 

  在使用的過程中,遇到過這樣的問題,一個頁面同時使用兩個table的時候,會有時候某個表格的最下邊會多出來一行邊框,以及某一行出現的這樣的情況,這是組件自己加了  一個:before元素,設定了寬度但是內容content = ''的原因造成了,出現這樣的問題,一般就要手動了找到是哪個元素默認添加的,然后在 scss中重新設定一下,並將其高度設置為0即可

 

 

  el-table中存在合並行和合並列的情況,假如按照官網的方式,將第一列的前五個合並為一個單元格,並將第一列的第六行第七行荷合並為一個單元格,那么我們可以這樣進行處理:

    method( row,  column,  rowIndex,   columnIndex){

      if( columnIndex ===  0){

        if( rowIndex ===0){

          return{  rowspan: 5, colspan: 0 }

        } else if( rowIndex === 5 ){

          return{  rowspan: 2, colspan: 0 }

        } else {

          return{  rowspan: 0, colspan: 0 }

        }

      } 

    }  

   然而這樣寫,頁面總是會出出現一些意想不到的效果;

   method(  row,  column,  rowIndex,   columnIndex){

     if(   columnIndex ===  0  &&  rowIndex ===0 ){

       return{  rowspan: 5, colspan: 0 }

     }

     

     if(   columnIndex ===  0  &&  rowIndex ===5 ){

       return{  rowspan: 2, colspan: 0 }

     }

     if(   columnIndex ===  0  &&  rowIndex !==0    &&  rowIndex !==5){

       return{  rowspan: 0, colspan: 0 }

     }

   }

    這樣的效果也是可以起到效果的,而且並不會出現意料之外的驚喜


免責聲明!

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



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