Home >Web Front-end >JS Tutorial >How to use iview's Table component to merge table columns
The content of this article is about how to use the Table component of iview to merge the columns of the table. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
iview’s Table component header grouping
Merge table header
Merge columns, display [total]
Header There are duplicate keys, how to match the data
To implement merged columns-it is necessary to modify the Table component to achieve
According to the demo provided by iview, it can be seen that editing the header is relatively easy, and you only need to write it according to the format.
Problem: There are duplicate keys in the header, how to match the header and table data
Solution:
Table header key_supplier ID that needs to be grouped
Table data key_supplier ID that needs to be grouped
[ { "width":"200", "align":"center", "title":"物品名称", "ellipsis":true, "key":"name", }, { "width":"100", "align":"center", "title":"数量", "ellipsis":true, "key":"purchaseAmount", }, { "width":"166", "align":"center", "title":"lyy369", "ellipsis":true, "key":"supplier_11113173785", "children":[ { "width":"100", "align":"center", "title":"单价(元)", "ellipsis":true, "key":"quoteUnitPrice_11113173785", }, { "width":"100", "align":"center", "title":"总计(元)", "ellipsis":true, "key":"quoteTotalPrice_11113173785", } ] }, { "width":"166", "align":"center", "title":"私人定制", "ellipsis":true, "key":"supplier_11113173838", "children":[ { "width":"100", "align":"center", "title":"单价(元)", "ellipsis":true, "key":"quoteUnitPrice_11113173838", }, { "width":"100", "align":"center", "title":"总计(元)", "ellipsis":true, "key":"quoteTotalPrice_11113173838", } ] } ]
[ { "name":"手动添加", "purchaseAmount":"9887.00", "quoteTotalPrice_11113173785":"494350.00", "supplierId_11113173785":"11113173785", "quoteAmount_11113173785":"9887.0000", "quoteUnitPrice_11113173785":"50.0000", "quoteTotalPrice_11113173838":"988700.00", "supplierId_11113173838":"11113173838", "quoteAmount_11113173838":"9887.0000", "quoteUnitPrice_11113173838":"100.0000" }, { "name":"2018年7月9日", "purchaseAmount":"1.00", "quoteTotalPrice_11113173785":"50.00", "supplierId_11113173785":"11113173785", "quoteAmount_11113173785":"1.0000", "quoteUnitPrice_11113173785":"50.0000", "quoteTotalPrice_11113173838":"100.00", "supplierId_11113173838":"11113173838", "quoteAmount_11113173838":"1.0000", "quoteUnitPrice_11113173838":"100.0000" }, { "name":" 中国移动取消流量“漫游”费", "purchaseAmount":"563.00", "quoteTotalPrice_11113173785":"28150.00", "supplierId_11113173785":"11113173785", "quoteAmount_11113173785":"563.0000", "quoteUnitPrice_11113173785":"50.0000" }, { "name":" 中国移动取消流量“漫游”费", "purchaseAmount":"23.00", "quoteTotalPrice_11113173785":"1150.00", "supplierId_11113173785":"11113173785", "quoteAmount_11113173785":"23.0000", "quoteUnitPrice_11113173785":"50.0000", "quoteTotalPrice_11113173838":"2300.00", "supplierId_11113173838":"11113173838", "quoteAmount_11113173838":"23.0000", "quoteUnitPrice_11113173838":"100.0000" } ]
You need to change the source code of iview's Table component here.
The data format is as follows, control rows, control columns, control the number of merges, and control the display data
[ {// 每一条,表示有一行 "total":"合计", // 展示的数据 "key":"total", // 表头的key "align":"center", "ellipsis":true, "colspan":"2", // 需要计算合并列的个数 "tableBody":[ // tableBody.length 表示有多少个值 { "total_11113173785":"523700.00", "key":"total_11113173785", "colspan":"2", "align":"center", "ellipsis":true }, { "total_11113173838":"991100.00", "key":"total_11113173838", "colspan":"2", "align":"center", "ellipsis":true } ] } ]
The following It is a modified source code. It does not currently support events such as mouse movement into the table.
table-body.vue:33
<!-- ++++++++++++++++ 2018年8月7日16:49:00 合并列单元格 start +++++++++++++++++++++ --> <template> <template> <table-tr> <td> <cell></cell> </td> <template> <td> <cell></cell> </td> </template> </table-tr> </template> </template> <!-- ++++++++++++++++ 合并列单元格 end +++++++++++++++++++++ -->
Related recommendations:
element-uiHow to reuse Table components
How to use the on-change attribute in IView
Solution to the misalignment of iview's select drop-down box options
JS table component artifact bootstrap table detailed explanation (basic version)
The above is the detailed content of How to use iview's Table component to merge table columns. For more information, please follow other related articles on the PHP Chinese website!