vue如何循環渲染element-ui中table內容


對於大多數前端開發者來說,vuejs+element-ui是開發后台管理系統過程中必不可少的技術框架。而后台管理系統中,最常見的形式就是表格和表單,以便用來增刪改查。

element-ui中table的使用

——當el-table元素中注入data對象數組后,在el-table-column中用prop屬性來對應對象中的鍵名即可填入數據,用label屬性來定義表格的列名。可以使用width屬性來定義列寬。

相當於是要枚舉出所有需要展示的參數,這種情況在參數比較少的情況下是比較方便的,但是在有很多數據或者參數不確定的情況下,這種枚舉的方式就不太適合了。

 <template>
    <el-table
      :data="tableData"
      style="width: 100%">
      <el-table-column
        prop="date"
        label="日期"
        width="180">
      </el-table-column>
      <el-table-column
        prop="name"
        label="姓名"
        width="180">
      </el-table-column>
      <el-table-column
        prop="address"
        label="地址">
      </el-table-column>
    </el-table>
  </template>

循環渲染出element-ui中table表格內容

table表格分為兩個部分,一部分值thead表頭,還有是tbody主體部分,所以可以分別循環出來,看代碼:

<el-table
    :data="rightsDate"     <!-- 表格里面的數據源 -->
      border
      stripe
      height="713"
> <el-table-column v-for="info in rightHeader" :key="info.key"
<!-- 設置表頭數據源,並循環渲染出來,property對應列內容的字段名,詳情見下面的數據源格式 -->
:property
="info.key" :label="info.label" > <template slot-scope="scope"> {{scope.row[scope.column.property]}} <!-- 渲染對應表格里面的內容 --> </template> </el-table-column> <el-table-column label="啟用狀態"> <template slot-scope="scope"> <el-switch v-model="scope.row.ifUse" :active-color="ACT_COLOR" :inactive-color="INACT_COLOR"> </el-switch> </template> </el-table-column> </el-table>
模擬數據源展示:
rightHeader: [ { label:
'編碼', key: 'code' }, { label: '姓名', key: 'name' }, { label: '權限描述', key: 'description' } ], rightsDate:[{ "id":221, "code": "01", "name": "西葯開立權限", "description": "醫生對西葯處方權限", "ifUse":"0" }, { "id":222, "code": "02", "name": "草葯開立權限", "description": "醫生對草葯處方權限", "ifUse":"0" }, { "id":223, "code": "03", "name": "成葯開立權限", "description": "醫生對成葯處方權限", "ifUse":"0" }, { "id":224, "code": "04", "name": "麻醉開立權限", "description": "醫生對麻醉處方權限", "ifUse":"0" }, { "id":225, "code": "05", "name": "精一開立權限", "description": "醫生對精一處方權限", "ifUse":"0" } ]

展示結果:

 


免責聲明!

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



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