Vue?element-ui表格內嵌進度條功能實現方法
一、引言
在著手做項目時,尤其是后臺管理系統類的項目,不難會遇到,數據用進度條的形式呈現,可視化。
二、方法
本次實驗主要應用element組件中的progress。
需要使用到屬性:
Type | 進度條類型line/circle/dashboard |
:text-inside | 進度條顯示文字內置在進度條內(只在 type=line 時可用) |
:percentage | 百分比(必填) |
:color | 進度條背景色(會覆蓋 status 狀態(tài)顏色) |
三、實驗結果與討論
1.前期準備工作
寫出基出表格
1.2使用JavaScript
當el-table元素中注入data對象數組后,在el-table-column中用prop屬性來對應對象中的鍵名即可填入數據,用label屬性來定義表格的列名??梢允褂脀idth屬性來定義列寬。
Element組件地址https://element.eleme.cn/#/zh-CN/component/table
2.實現功能
使用數組,自定義進度條數值。:percentage="scope.row.progress"
根據scope.row行數據變化動態(tài)顯示行內控件,progress是定義的變量進行賦值。
<template slot-scope="scope"> <el-progress type="line" :stroke-width="15" :percentage="scope.row.progress" :color="blue" ></el-progress> </template>
3完整實驗代碼
<el-table :data="jinDuData" style="width: 100%"> <el-table-column prop="zhuangtai" label="狀態(tài)" > <template scope="scope"> <span v-if="scope.row.zhuangtai==='進行中'" style="color: green">進行中</span> <span v-else-if="scope.row.zhuangtai==='已延期'" style="color: red">已延期</span> <span v-else-if="scope.row.zhuangtai==='未開始'" style="color: orange">未開始</span> <span v-else style="color:gray"><del>已結束</del></span> </template> </el-table-column> <el-table-column prop="progress" label="進度" > <template slot-scope="scope"> <el-progress type="line" :stroke-width="15" :percentage="scope.row.progress" :color="blue" ></el-progress> </template> </el-table-column> </el-table>
<script> export default { data() { return { reverse: true, jinDuData:[{ zhuangtai:'進行中', progress:10 },{ zhuangtai:'進行中', progress:90 },{ zhuangtai:'已延期', progress:50 },{ zhuangtai:'已延期', progress:70 },{ zhuangtai:'未開始', progress:100 },{ zhuangtai:'已結束', progress:10 },{ zhuangtai:'已結束', progress:30 }], } </script>
四、結語
本次實驗解決的問題為table表格中內嵌進度條,實現數值自定義功能。實驗過程中,多次實驗可行解決方案,最終發(fā)現可以根據scope.row行數據變化動態(tài)顯示行內控件。
到此這篇關于Vue element-ui表格內嵌進度條功能的文章就介紹到這了,更多相關Vue element-ui表格嵌進度條內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!