Vue組件庫ElementUI實現表格加載樹形數據教程
ElementUI實現表格樹形列表加載教程,供大傢參考,具體內容如下
Element UI 是一套采用 Vue 2.0 作為基礎框架實現的組件庫,一套為開發者、設計師和產品經理準備的基於 Vue 2.0 的組件庫,提供瞭配套設計資源,幫助網站快速成型
關鍵代碼,在el-table添加屬性, :tree-props=”{children: ‘children’}” ,註意row必須命名為children,官網也進行瞭說明:
支持樹類型的數據的顯示。當 row 中包含 children 字段時,被視為樹形數據。渲染樹形數據時,必須要指定 row-key。支持子節點數據異步加載。設置 Table 的 lazy 屬性為 true 與加載函數 load 。通過指定 row 中的 hasChildren 字段來指定哪些行是包含子節點。children 與 hasChildren 都可以通過 tree-props 配置。
<el-table ref="Table" :data="apprItemData" :header-cell-style="headClass" @select="handleSelection" row-key="approveItem" height="420" border default-expand-all :tree-props="{children: 'children'}"> <el-table-column type="selection" width="55"> </el-table-column> <el-table-column prop="itemCode" label="事項編碼"> </el-table-column> <el-table-column prop="approveName" label="事項名稱"> </el-table-column> <el-table-column prop="apprStatusStr" label="配置的環節" color="blue"> </el-table-column> </el-table>
後臺json數據:
{ "id":3, "itemCode":"123", "approveName":"測試事項", "apprStatusStr":"環節名稱", "children":[ { "id":31, "itemCode":"111", "approveName":"測試事項", "apprStatusStr":"環節名稱" } ] }
<script type="text/babel"> var vm = new Vue({ el: '#app', data:{ apprItemData : [], currentPage: 1, //當前頁 totalRow: 0, //總頁數 pageSize: 10 //當前顯示條數 }, computed: {}, watch: {}, created() {}, mounted() { this.loadItemData(); }, methods: { // 加載事項信息 loadItemData () { var pageSize = this.pageSize; var currentPage = this.currentPage; console.log("pageSize:"+pageSize+",currentPage:"+currentPage); //debugger; var geturl = '${root}/config/loadItemData.do?rows='+pageSize + '&page=' + currentPage; $.ajax({ type: 'get', url:geturl, contentType: "application/json; charset=utf-8", success: function(data) { //debugger; console.log("totalRow:"+data.total); vm.apprItemData = data.rows; }, error: function(e) { console.log("更新數據出現錯誤:",e); } }) } } }); </script>
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。
推薦閱讀:
- Vue組件庫ElementUI實現表格列表分頁效果
- 基於ElementUI中Table嵌套實現多選的示例代碼
- elementui中樹形表格切換展開不同層級的示例代碼
- vue實現表格分頁功能
- ElementUI對table的指定列進行合算