摘要:無(wú)效方案根據(jù)交易所小時(shí)成交量占比和實(shí)時(shí)價(jià)格加權(quán)計(jì)算得到渲染結(jié)果是一個(gè)包含了文字,同時(shí)有名為的,并無(wú)小圖標(biāo),后邊中括號(hào)結(jié)構(gòu)里只能有一個(gè)有待考證。
Table 固定表頭
只要在el-table元素中定義了height屬性,即可實(shí)現(xiàn)固定表頭的表格,而不需要額外的代碼。
例如:
...
這里文檔只給了一種固定高度250px的解決方案,實(shí)際應(yīng)用大多數(shù)是需要自適應(yīng)占滿父元素,超出滾動(dòng)固定表頭的。
值得一提的是,height可以動(dòng)態(tài)綁定,我的解決方案是給表格包一個(gè)父元素,并綁定一個(gè)值100%給height。
height:Table 的高度,默認(rèn)為自動(dòng)高度。如果 height 為 number 類型,單位 px;如果 height 為 string 類型,則這個(gè)高度會(huì)設(shè)置為 Table 的 style.height 的值,Table 的高度會(huì)受控于外部樣式。點(diǎn)擊事件
點(diǎn)擊事件剛開始在這里陷入深坑了,拿行的點(diǎn)擊事件來(lái)講:
row-dblclick: 表格的某一行雙擊事件。首先是dblclick而不是dbclick!(不知為什么我vscode提示row-dbclick,醉了),其次調(diào)用加@,然后默認(rèn)參數(shù)通常用到最多的是row,不用在括號(hào)里寫明,在方法里直接聲明就可以用了;row-click同理。
例如:
配合vue過(guò)濾器...
主要使用自定義列,參數(shù)為 { row, column, $index }
自定義表頭{{ scope.row.platform.rise | percent(2) | sign(scope.row.platform.change) | nvl("--")}} //scope.row是當(dāng)前列的值,prop其實(shí)可以不寫
文檔解釋比較簡(jiǎn)單:
render-header | 列標(biāo)題 Label 區(qū)域渲染使用的 Function | Function(h, { column, $index }) | — | — |
---|
實(shí)現(xiàn)效果:
鼠標(biāo)移上去會(huì)有提示文字彈出,這里用el-tooltips。
無(wú)效方案:
renderHeader (h, { column, $index }) { return h("el-tooltip", { props: { effect: "light", content: "根據(jù)交易所24小時(shí)成交量占比和實(shí)時(shí)價(jià)格加權(quán)計(jì)算得到", } },[ h("span", column.label), h("i", { class: "icon-tips", } }) ]);
渲染結(jié)果是一個(gè)span包含了label文字,同時(shí)有名為el-tooltip的class,并無(wú)小圖標(biāo),后邊中括號(hào)結(jié)構(gòu)里只能有一個(gè)(有待考證)。
可行方案:
renderHeader (h, { column, $index }) { return [ h("span", column.label), h( "el-tooltip", { props: { effect: "light", content: (function () { let label = column.label; switch (label) { case "加權(quán)最新價(jià)": return "根據(jù)交易所24小時(shí)成交量占比和實(shí)時(shí)價(jià)格加權(quán)計(jì)算得到"; break; case "偏移價(jià)": return "交易所該幣對(duì)當(dāng)前最新價(jià)-加權(quán)價(jià)"; break; } })(), } }, [ h("i", { class: "icon-tips" }) ] ), h("span", { class: { "el-icon-question": true } }) ]; },
事實(shí)證明返回的這個(gè)數(shù)組,可以作為表頭內(nèi)真正的標(biāo)簽元素多個(gè)累加,最后一個(gè)span是我追加的,其實(shí)是多余的,參考ElementUI的Table組件中的renderHeader方法研究,作者研究很透徹,最后把span替換成p也能正常渲染,這是我最后一步嘗試的,說(shuō)明數(shù)組內(nèi)的渲染機(jī)制,而h或createElement渲染函數(shù)第三個(gè)數(shù)組參數(shù)大于一個(gè)的結(jié)構(gòu)均不能被渲染上,而且本標(biāo)簽無(wú)論如何都被渲染為span,郁悶。
先這么使用吧,算是滿足需求了
vue關(guān)于createElement函數(shù),domProps了解下,簡(jiǎn)單的結(jié)構(gòu)可以用這個(gè)實(shí)現(xiàn)
可行方案二:使用jsx,直接return (HTML結(jié)構(gòu))
表格滾動(dòng)到頂部或底部(原鏈接)$refs.table: 為el-table設(shè)置的ref屬性
滾動(dòng)到第一行:
this.$refs.table.bodyWrapper.scrollTop =0;
滾動(dòng)到最后一行:
this.$refs.table.bodyWrapper.scrollTop =this.$refs.table.bodyWrapper.scrollHeight;upload上傳組件控制上傳圖片尺寸
主要在before-upload函數(shù)中限制尺寸大小等。
點(diǎn)擊上傳 只能上傳jpg/jpeg文件,且不超過(guò)500kb
beforePicUpload (file) { const isSize = new Promise(function(resolve, reject) { let width = 200; let height = 54; let _URL = window.URL || window.webkitURL; let img = new Image(); img.onload = function() { let valid = img.width == width && img.height == height; valid ? resolve() : reject(); } img.src = _URL.createObjectURL(file); }).then(() => { return file; }, () => { this.$message.error("上傳圖片尺寸要求200*200!"); return Promise.reject(); }); }Element UI的文件上傳組件el-upload的表單校驗(yàn)required問(wèn)題
template:
//... //... 點(diǎn)擊上傳 支持格式:jpg、jpeg 像素要求640*240
script:
export default { data () { collectionInfos: {}, rules: { ... resource_url: [ { required: true, message: "請(qǐng)選擇合輯封面", trigger: "blur, change" }, ] }, }, }
類似這樣的校驗(yàn)規(guī)則在空表單提交時(shí)是會(huì)正常顯示請(qǐng)選擇合輯封面的錯(cuò)誤提示的,然而在你上傳完圖片后再次提交,依然會(huì)校驗(yàn)不通過(guò),因
為在你選擇手動(dòng)提交文件時(shí),這個(gè)resource_url就不可能像自動(dòng)上傳那樣有值了,除非手動(dòng)賦值,而文件的改變刪除等變動(dòng)當(dāng)然由on-change事件處理比較合適,而且我試了多次,其他地方還是會(huì)出現(xiàn)校驗(yàn)不通過(guò)的情況,如下圖:
//el-upload組件里綁定的事件(可以參開上面template) handleChange (file, fileList) { this.file = fileList; this.$set(this.collectionInfos, "resource_url",file.url); },
這樣就解決了。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/114123.html
摘要:無(wú)效方案根據(jù)交易所小時(shí)成交量占比和實(shí)時(shí)價(jià)格加權(quán)計(jì)算得到渲染結(jié)果是一個(gè)包含了文字,同時(shí)有名為的,并無(wú)小圖標(biāo),后邊中括號(hào)結(jié)構(gòu)里只能有一個(gè)有待考證。 Table 固定表頭 只要在el-table元素中定義了height屬性,即可實(shí)現(xiàn)固定表頭的表格,而不需要額外的代碼。例如: ... 這里文檔只給了一種固定高度250px的解決方案,實(shí)際應(yīng)用大多數(shù)是需要自適應(yīng)占滿父元素,超出滾動(dòng)固定表頭的...
摘要:最近準(zhǔn)備系統(tǒng)地學(xué)習(xí),這篇文章將持續(xù)更新,記錄自己在使用中遇到的問(wèn)題踩過(guò)的坑等,小白的錯(cuò)誤不入法眼,掠過(guò)就好。字符串形式對(duì)象形式行內(nèi)寫法多個(gè)之間用分割。 最近準(zhǔn)備系統(tǒng)地學(xué)習(xí)webpack,這篇文章將持續(xù)更新,記錄自己在使用webpack中遇到的問(wèn)題、踩過(guò)的坑等,小白的錯(cuò)誤不入法眼,掠過(guò)就好。 常見(jiàn)用法 module 的 loader 屬性 與 use 屬性聯(lián)系 查閱后,有說(shuō) webpa...
摘要:下面一步步拆解上述流程。切換至分支檢測(cè)本地和暫存區(qū)是否還有未提交的文件檢測(cè)本地分支是否有誤檢測(cè)本地分支是否落后遠(yuǎn)程分支發(fā)布發(fā)布檢測(cè)到在分支上沒(méi)有沖突后,立即執(zhí)行。 背景 最近一直在著手做一個(gè)與業(yè)務(wù)強(qiáng)相關(guān)的組件庫(kù),一直在思考要從哪里下手,怎么來(lái)設(shè)計(jì)這個(gè)組件庫(kù),因?yàn)闃I(yè)務(wù)上一直在使用ElementUI(以下簡(jiǎn)稱Element),于是想?yún)⒖剂艘幌翬lement組件庫(kù)的設(shè)計(jì),看看Element構(gòu)...
摘要:先看這個(gè)值即為判斷顯示展開還是收縮狀態(tài)的開關(guān)。這樣就實(shí)現(xiàn)了展開狀態(tài)下的菜單。如果有時(shí)間的話,我會(huì)把這個(gè)系列寫完,知道朋友們能獨(dú)立開發(fā)一個(gè)完整的的單頁(yè)面后臺(tái)管理程序。 涉及到路由,權(quán)限等等相關(guān)內(nèi)容的部分,跟本文主旨關(guān)系不大,所以我將會(huì)在另外一篇文章中詳述,混在一起的話內(nèi)容太多了 基于element-ui的左側(cè)可伸縮的菜單通過(guò)vuejs來(lái)開發(fā)支持展開收縮的菜單是非常簡(jiǎn)單的,只需要v-i...
閱讀 1325·2021-11-24 10:24
閱讀 4171·2021-11-22 15:29
閱讀 1103·2019-08-30 15:53
閱讀 2804·2019-08-30 10:54
閱讀 1990·2019-08-29 17:26
閱讀 1297·2019-08-29 17:08
閱讀 615·2019-08-28 17:55
閱讀 1595·2019-08-26 14:01