摘要:問題表頭有重復(fù)的,表頭和表數(shù)據(jù)如何匹配解決需要分組的表頭供貨人需要分組的表數(shù)據(jù)供貨人物品名稱數(shù)量單價(jià)元總計(jì)元私人定制單價(jià)元總計(jì)元手動(dòng)添加年月日中國移動(dòng)取消流量漫游費(fèi)中國移動(dòng)取消流量漫游費(fèi)實(shí)現(xiàn)合計(jì)的合并列展示此處需要更改的組件的源碼。
iview的Table組件表頭分組
iview的Table組件表頭分組
需求說明合并表頭
合并列,展示[合計(jì)]
最終呈現(xiàn)的效果 問題表頭有重復(fù)的key,數(shù)據(jù)如何匹配
實(shí)現(xiàn)合并列——需要修改Table組件來實(shí)現(xiàn)
列頭和合并列的匹配
1、合并表頭根據(jù)iview提供的demo可以看出,表頭的編輯是比較容易的,只需要根據(jù)格式編寫即可。
問題:表頭有重復(fù)的key,表頭和表數(shù)據(jù)如何匹配
解決:
需要分組的表頭 key_供貨人ID 需要分組的表數(shù)據(jù) key_供貨人ID
[ { "width":"200", "align":"center", "title":"物品名稱", "ellipsis":true, "key":"name", }, { "width":"100", "align":"center", "title":"數(shù)量", "ellipsis":true, "key":"purchaseAmount", }, { "width":"166", "align":"center", "title":"lyy369", "ellipsis":true, "key":"supplier_11113173785", "children":[ { "width":"100", "align":"center", "title":"單價(jià)(元)", "ellipsis":true, "key":"quoteUnitPrice_11113173785", }, { "width":"100", "align":"center", "title":"總計(jì)(元)", "ellipsis":true, "key":"quoteTotalPrice_11113173785", } ] }, { "width":"166", "align":"center", "title":"私人定制", "ellipsis":true, "key":"supplier_11113173838", "children":[ { "width":"100", "align":"center", "title":"單價(jià)(元)", "ellipsis":true, "key":"quoteUnitPrice_11113173838", }, { "width":"100", "align":"center", "title":"總計(jì)(元)", "ellipsis":true, "key":"quoteTotalPrice_11113173838", } ] } ]
[ { "name":"手動(dòng)添加", "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":" 中國移動(dòng)取消流量“漫游”費(fèi)", "purchaseAmount":"563.00", "quoteTotalPrice_11113173785":"28150.00", "supplierId_11113173785":"11113173785", "quoteAmount_11113173785":"563.0000", "quoteUnitPrice_11113173785":"50.0000" }, { "name":" 中國移動(dòng)取消流量“漫游”費(fèi)", "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" } ]2、實(shí)現(xiàn)[合計(jì)]的合并列展示
此處需要更改iview的Table組件的源碼。
數(shù)據(jù)格式如下,控制行,控制列,控制合并個(gè)數(shù),控制展示數(shù)據(jù)
[ {// 每一條,表示有一行 "total":"合計(jì)", // 展示的數(shù)據(jù) "key":"total", // 表頭的key "align":"center", "ellipsis":true, "colspan":"2", // 需要計(jì)算合并列的個(gè)數(shù) "tableBody":[ // tableBody.length 表示有多少個(gè)值 { "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 } ] } ]
以下是修改的源碼,暫時(shí)不支持表格的鼠標(biāo)移入等事件
table-body.vue:33
3、合并列的數(shù)據(jù)與列頭的匹配(2019年5月29日) | |
問題:最后一行的合并列的數(shù)據(jù),是修改了源碼添加的。所以,沒有跟列頭產(chǎn)生關(guān)聯(lián)。
解決:如下代碼 table.vue:1038 在 watch 添加代碼
// 2019年5月17日16:01:58 整理 colSpanColumns colSpanColumns(newData, oldData){ if(newData.length>0) { let finshData=[]; for (let i in this.columns) { // 2019年5月17日16:07:29 因?yàn)槟壳暗臄?shù)據(jù)都只有一條合并列的數(shù)據(jù)。先寫死第0個(gè)。后續(xù)增加了,再改 this.colSpanColumns[0].tableBody.forEach((item, index)=>{ if(item.key==this.columns[i].key) { finshData.push(item); } }); } this.colSpanColumns[0].tableBody=finshData; } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/108152.html
摘要:因?yàn)槲覀冺?xiàng)目中首要的是單元格拆分的,因此以拆分為例。使用函數(shù)對(duì)表格組件的表格列配置數(shù)據(jù)進(jìn)行動(dòng)態(tài)改造,普通單元格渲染標(biāo)簽呈現(xiàn)數(shù)據(jù),要拆分的單元格渲染原生標(biāo)簽最后隱藏嵌套表格的邊框及調(diào)整相關(guān)原生表格樣式。 最近在開發(fā)的Vue項(xiàng)目中,使用了iview第三方UI庫;對(duì)于表格組件的需求是最多的,但是在一些特定場景下,發(fā)現(xiàn)iview的表格組件沒有單元格合并與拆分的API,搜了一下發(fā)現(xiàn)很多同學(xué)提問關(guān)...
摘要:開發(fā)后臺(tái)系統(tǒng)問題總結(jié)項(xiàng)目參考了用了包裹頁面進(jìn)行緩存點(diǎn)擊可切換不會(huì)重新渲染在特定頁面比如詳情頁需要每次刷新的時(shí)候添加進(jìn)行相關(guān)的刷新導(dǎo)致了另外一個(gè)問題最初跳轉(zhuǎn)時(shí)用的傳參刷新參數(shù)就沒了特改為傳參涉及到關(guān)閉點(diǎn)擊等多個(gè)問題用存儲(chǔ)數(shù)據(jù)并做了最大限 vue+iview 開發(fā)后臺(tái)系統(tǒng)問題總結(jié) 項(xiàng)目參考了iview-admin tags 用了keep-alive 包裹 router-view,頁面進(jìn)行...
摘要:相對(duì)時(shí)間組件錨點(diǎn)組件面板分割組件分割線組件單元格組件相對(duì)時(shí)間組件用于表示幾分鐘前幾小時(shí)前等相對(duì)于此時(shí)此刻的時(shí)間描述。單元格組件在手機(jī)上比較常見,在上則常用于固定的側(cè)邊菜單項(xiàng)。開發(fā)者社區(qū)這是發(fā)布會(huì)最勁爆的一款產(chǎn)品了。 showImg(https://segmentfault.com/img/bVbeuj6?w=2864&h=1458); 7 月 28 日,我們成功地召開了 iView 3...
摘要:最近在搗鼓項(xiàng)目,恰好用到組件,之前寫了個(gè),后面一直都想寫一個(gè)像樣的,可以分享給別人用的組件。自己的水平一般,開發(fā)出來的組件可能代碼不咋地,還望路過大神斧正。 uniapp是2019年非常的火爆的一個(gè)Dcloud開發(fā)跨平臺(tái)前端工具,支持ios android wap,小程序,除了android有點(diǎn)卡外,其他暫時(shí)沒有發(fā)現(xiàn)什么瑕疵。 最近在搗鼓uniapp項(xiàng)目,恰好用到table組件,之前...
閱讀 2335·2021-11-25 09:43
閱讀 2960·2019-08-30 15:52
閱讀 1919·2019-08-30 15:44
閱讀 999·2019-08-30 10:58
閱讀 784·2019-08-29 18:43
閱讀 3241·2019-08-29 18:36
閱讀 2339·2019-08-29 17:02
閱讀 1479·2019-08-29 17:01