vue基于el-table拓展之table-plus組件
目的
- 配置型表格多級(jí)表頭/自定義表頭、形數(shù)據(jù)與懶加載用法等支持el-table大部分屬性和用法
- 內(nèi)置loading加載
- 內(nèi)置合并單元格
- 默認(rèn)跨頁選擇
- 自定義列模板
- 劃重點(diǎn):后面tableSmart的基礎(chǔ)組件
源碼
- 包裹層TableWrap.vue
<template> <div :class="s.tableWrap"> <slot></slot> <div :class="s.noData" v-if="!loading && list.length === 0"> <div> <d-icon :class="s.icon" type="no-data"></d-icon> <div :class="s.text">{{ text }}</div> </div> </div> </div> </template> <script> export default { props: { list: { type: Array, default: [], }, text: { type: String, default: '搜索不到您想要的數(shù)據(jù)~換個(gè)條件試一下', }, loading: { type: Boolean, default: false, }, }, data() { return {}; }, }; </script> <style lang="scss" module="s"> .tableWrap { position: relative; } .noData { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); > div { display: flex; align-items: center; flex-direction: column; justify-content: center; } .icon { font-size: 60px; color: $color-primary; } .text { color: #80848f; font-size: 14px; margin: 8px 0 16px; } } </style>
- 核心拓展
<script> import VTableWrap from './TableWrap.vue'; export default { components: { VTableWrap, }, props: { spanConfig: { type: Object, default: () => ({ propList: [], children: 'children', key: '', }), }, }, data() { return { domTable: '', loading: {}, }; }, computed: { list() { if (this.spanConfig.key) { const arr = []; this.$attrs.data.forEach((item) => { if (item[this.spanConfig.children] && item[this.spanConfig.children].length) { item[this.spanConfig.children].forEach((child) => { arr.push({ ...item, ...child, }); }); } else { arr.push({ ...item, }); } }); return arr; } return this.$attrs.data; }, // 合并多少個(gè)計(jì)算 spanArr() { let contactDot = 0; const spanArr = []; this.list.forEach((item, index) => { if (index === 0) { spanArr.push(1); } else { if (item[this.spanConfig.key] === this.list[index - 1][this.spanConfig.key]) { spanArr[contactDot] += 1; spanArr.push(0); } else { spanArr.push(1); contactDot = index; } } }); return spanArr; }, // 取要合并的index spanIndex() { const propList = this.$attrs.columns.map((item) => item.prop || item.property); return this.spanConfig.propList.map((prop) => ( propList.findIndex((key) => key === prop) )); }, }, mounted() { this.$nextTick(() => { // 此處勿使用document 會(huì)區(qū)找尋windows 作用域下生成的所有dom元素 this.domTable = this.$refs.table.$el.querySelector('.el-table__body'); if (this.domTable) { this.loading = this.$loading({ lock: true, customClass: this.s.customLoding, text: '', spinner: 'el-icon-loading', target: this.$refs.table.$el.querySelector('.el-table__body'), }); // 加載因?yàn)?render函數(shù)渲染執(zhí)行 順序 此處需關(guān)閉 if (this.$attrs.loading === undefined) { this.loading.close(); } else { this.loading.visible = this.$attrs.loading; } } }); }, render(createElement) { const { columns = [] } = this.$attrs; // 加載 this.$nextTick(() => { this.$refs.table.doLayout(); if (this.domTable) { if (this.$attrs.loading === undefined) { this.loading.close(); } else { this.loading.visible = this.$attrs.loading; } } }); // 加上遞歸 const tableColumn = (item, index) => createElement( 'el-table-column', { props: { ...item, }, key: `${item.label}-${index}`, scopedSlots: { default: this.$scopedSlots[item.slotName] || '', header: this.$scopedSlots[item.slotHeaderName] || '', }, }, [ item.children && item.children.length && item.children.map((list, index) => tableColumn(list, index)), ], ); const table = createElement( 'el-table', { ref: 'table', props: { headerRowClassName: 'custom-table-header', 'span-method': this.objectSpanMethod, ...this.$attrs, data: this.list, }, on: { ...this.$listeners, }, scopedSlots: { append: this.$scopedSlots.append, }, }, [...columns.map((item, index) => tableColumn(item, index))], ); return createElement('VTableWrap', { props: { text: this.$attrs.emptyText, loading: this.$attrs.loading, list: this.$attrs.data, }, }, [table]); }, methods: { objectSpanMethod({ rowIndex, columnIndex, }) { if (this.spanIndex.includes(columnIndex)) { const _row = this.spanArr[rowIndex]; const _col = _row > 0 ? 1 : 0; return { rowspan: _row, colspan: _col, }; } }, clearSelection() { this.$refs.table.clearSelection(); }, toggleRowSelection(row, selected) { this.$refs.table.toggleRowSelection(row, selected); }, toggleAllSelection() { this.$refs.table.toggleRowSelection(); }, toggleRowExpansion(row, expanded) { this.$refs.table.toggleRowExpansion(row, expanded); }, setCurrentRow(row) { this.$refs.table.setCurrentRow(row); }, clearSort() { this.$refs.table.clearSort(); }, clearFilter(columnKey) { this.$refs.table.clearFilter(columnKey); }, doLayout() { this.$refs.table.doLayout(); }, sort(prop, order) { this.$refs.table.sort(prop, order); }, }, }; </script> <style lang="scss" module="s"> .customLoding { right: 1px; bottom: 1px; height: 100%; :global(.el-icon-loading){ display: none; } } </style>
文檔
TablePlus Attributes
參數(shù) | 說明 | 類型 | 可選值 | 默認(rèn)值 |
---|---|---|---|---|
data | 顯示的數(shù)據(jù) | array | — | — |
height | Table 的高度,默認(rèn)為自動(dòng)高度。如果 height 為 number 類型,單位 px;如果 height 為 string 類型,則這個(gè)高度會(huì)設(shè)置為 Table 的 style.height 的值,Table 的高度會(huì)受控于外部樣式。 | string/number | — | — |
max-height | Table 的最大高度。合法的值為數(shù)字或者單位為 px 的高度。 | string/number | — | — |
stripe | 是否為斑馬紋 table | boolean | — | false |
border | 是否帶有縱向邊框 | boolean | — | false |
size | Table 的尺寸 | string | medium / small / mini | — |
fit | 列的寬度是否自撐開 | boolean | — | true |
show-header | 是否顯示表頭 | boolean | — | true |
highlight-current-row | 是否要高亮當(dāng)前行 | boolean | — | false |
current-row-key | 當(dāng)前行的 key,只寫屬性 | String,Number | — | — |
row-class-name | 行的 className 的回調(diào)方法,也可以使用字符串為所有行設(shè)置一個(gè)固定的 className。 | Function({row, rowIndex})/String | — | — |
row-style | 行的 style 的回調(diào)方法,也可以使用一個(gè)固定的 Object 為所有行設(shè)置一樣的 Style。 | Function({row, rowIndex})/Object | — | — |
cell-class-name | 單元格的 className 的回調(diào)方法,也可以使用字符串為所有單元格設(shè)置一個(gè)固定的 className。 | Function({row, column, rowIndex, columnIndex})/String | — | — |
cell-style | 單元格的 style 的回調(diào)方法,也可以使用一個(gè)固定的 Object 為所有單元格設(shè)置一樣的 Style。 | Function({row, column, rowIndex, columnIndex})/Object | — | — |
header-row-class-name | 表頭行的 className 的回調(diào)方法,也可以使用字符串為所有表頭行設(shè)置一個(gè)固定的 className。 | Function({row, rowIndex})/String | — | — |
header-row-style | 表頭行的 style 的回調(diào)方法,也可以使用一個(gè)固定的 Object 為所有表頭行設(shè)置一樣的 Style。 | Function({row, rowIndex})/Object | — | — |
header-cell-class-name | 表頭單元格的 className 的回調(diào)方法,也可以使用字符串為所有表頭單元格設(shè)置一個(gè)固定的 className。 | Function({row, column, rowIndex, columnIndex})/String | — | — |
header-cell-style | 表頭單元格的 style 的回調(diào)方法,也可以使用一個(gè)固定的 Object 為所有表頭單元格設(shè)置一樣的 Style。 | Function({row, column, rowIndex, columnIndex})/Object | — | — |
row-key | 行數(shù)據(jù)的 Key,用來優(yōu)化 Table 的渲染;在使用 reserve-selection 功能與顯示樹形數(shù)據(jù)時(shí),該屬性是必填的。類型為 String 時(shí),支持多層訪問:user.info.id ,但不支持 user.info[0].id ,此種情況請使用 Function 。 | Function(row)/String | — | — |
empty-text | 空數(shù)據(jù)時(shí)顯示的文本內(nèi)容,也可以通過 slot="empty" 設(shè)置 | String | — | 暫無數(shù)據(jù) |
default-expand-all | 是否默認(rèn)展開所有行,當(dāng) Table 包含展開行存在或者為樹形表格時(shí)有效 | Boolean | — | false |
expand-row-keys | 可以通過該屬性設(shè)置 Table 目前的展開行,需要設(shè)置 row-key 屬性才能使用,該屬性為展開行的 keys 數(shù)組。 | Array | — | |
default-sort | 默認(rèn)的排序列的 prop 和順序。它的prop 屬性指定默認(rèn)的排序的列,order 指定默認(rèn)排序的順序 | Object | order : ascending, descending | 如果只指定了prop , 沒有指定order , 則默認(rèn)順序是ascending |
tooltip-effect | tooltip effect 屬性 | String | dark/light | |
show-summary | 是否在表尾顯示合計(jì)行 | Boolean | — | false |
sum-text | 合計(jì)行第一列的文本 | String | — | 合計(jì) |
summary-method | 自定義的合計(jì)計(jì)算方法 | Function({ columns, data }) | — | — |
span-method | 合并行或列的計(jì)算方法 | Function({ row, column, rowIndex, columnIndex }) | — | — |
select-on-indeterminate | 在多選表格中,當(dāng)僅有部分行被選中時(shí),點(diǎn)擊表頭的多選框時(shí)的行為。若為 true,則選中所有行;若為 false,則取消選擇所有行 | Boolean | — | true |
indent | 展示樹形數(shù)據(jù)時(shí),樹節(jié)點(diǎn)的縮進(jìn) | Number | — | 16 |
lazy | 是否懶加載子節(jié)點(diǎn)數(shù)據(jù) | Boolean | — | — |
load | 加載子節(jié)點(diǎn)數(shù)據(jù)的函數(shù),lazy 為 true 時(shí)生效,函數(shù)第二個(gè)參數(shù)包含了節(jié)點(diǎn)的層級(jí)信息 | Function(row, treeNode, resolve) | — | — |
tree-props | 渲染嵌套數(shù)據(jù)的配置選項(xiàng) | Object | — | { hasChildren: 'hasChildren', children: 'children' } |
-分割線- | --- | --- | --- | --- |
columns | 列表配置 | array | column | [] |
spanConfig | 合并表格配置 | object | spanConfig | [] |
slotName | 自定義插槽名字 | string | - | - |
TablePlus Events
事件名 | 說明 | 參數(shù) |
---|---|---|
select | 當(dāng)用戶手動(dòng)勾選數(shù)據(jù)行的 Checkbox 時(shí)觸發(fā)的事件 | selection, row |
select-all | 當(dāng)用戶手動(dòng)勾選全選 Checkbox 時(shí)觸發(fā)的事件 | selection |
selection-change | 當(dāng)選擇項(xiàng)發(fā)生變化時(shí)會(huì)觸發(fā)該事件 | selection |
cell-mouse-enter | 當(dāng)單元格 hover 進(jìn)入時(shí)會(huì)觸發(fā)該事件 | row, column, cell, event |
cell-mouse-leave | 當(dāng)單元格 hover 退出時(shí)會(huì)觸發(fā)該事件 | row, column, cell, event |
cell-click | 當(dāng)某個(gè)單元格被點(diǎn)擊時(shí)會(huì)觸發(fā)該事件 | row, column, cell, event |
cell-dblclick | 當(dāng)某個(gè)單元格被雙擊擊時(shí)會(huì)觸發(fā)該事件 | row, column, cell, event |
row-click | 當(dāng)某一行被點(diǎn)擊時(shí)會(huì)觸發(fā)該事件 | row, column, event |
row-contextmenu | 當(dāng)某一行被鼠標(biāo)右鍵點(diǎn)擊時(shí)會(huì)觸發(fā)該事件 | row, column, event |
row-dblclick | 當(dāng)某一行被雙擊時(shí)會(huì)觸發(fā)該事件 | row, column, event |
header-click | 當(dāng)某一列的表頭被點(diǎn)擊時(shí)會(huì)觸發(fā)該事件 | column, event |
header-contextmenu | 當(dāng)某一列的表頭被鼠標(biāo)右鍵點(diǎn)擊時(shí)觸發(fā)該事件 | column, event |
sort-change | 當(dāng)表格的排序條件發(fā)生變化的時(shí)候會(huì)觸發(fā)該事件 | { column, prop, order } |
filter-change | 當(dāng)表格的篩選條件發(fā)生變化的時(shí)候會(huì)觸發(fā)該事件,參數(shù)的值是一個(gè)對象,對象的 key 是 column 的 columnKey,對應(yīng)的 value 為用戶選擇的篩選條件的數(shù)組。 | filters |
current-change | 當(dāng)表格的當(dāng)前行發(fā)生變化的時(shí)候會(huì)觸發(fā)該事件,如果要高亮當(dāng)前行,請打開表格的 highlight-current-row 屬性 | currentRow, oldCurrentRow |
header-dragend | 當(dāng)拖動(dòng)表頭改變了列的寬度的時(shí)候會(huì)觸發(fā)該事件 | newWidth, oldWidth, column, event |
expand-change | 當(dāng)用戶對某一行展開或者關(guān)閉的時(shí)候會(huì)觸發(fā)該事件(展開行時(shí),回調(diào)的第二個(gè)參數(shù)為 expandedRows;樹形表格時(shí)第二參數(shù)為 expanded) | row, (expandedRows | expanded) |
TablePlus Methods
方法名 | 說明 | 參數(shù) |
---|---|---|
clearSelection | 用于多選表格,清空用戶的選擇 | — |
toggleRowSelection | 用于多選表格,切換某一行的選中狀態(tài),如果使用了第二個(gè)參數(shù),則是設(shè)置這一行選中與否(selected 為 true 則選中) | row, selected |
toggleAllSelection | 用于多選表格,切換所有行的選中狀態(tài) | - |
toggleRowExpansion | 用于可展開表格與樹形表格,切換某一行的展開狀態(tài),如果使用了第二個(gè)參數(shù),則是設(shè)置這一行展開與否(expanded 為 true 則展開) | row, expanded |
setCurrentRow | 用于單選表格,設(shè)定某一行為選中行,如果調(diào)用時(shí)不加參數(shù),則會(huì)取消目前高亮行的選中狀態(tài)。 | row |
clearSort | 用于清空排序條件,數(shù)據(jù)會(huì)恢復(fù)成未排序的狀態(tài) | — |
clearFilter | 不傳入?yún)?shù)時(shí)用于清空所有過濾條件,數(shù)據(jù)會(huì)恢復(fù)成未過濾的狀態(tài),也可傳入由columnKey組成的數(shù)組以清除指定列的過濾條件 | columnKey |
doLayout | 對 Table 進(jìn)行重新布局。當(dāng) Table 或其祖先元素由隱藏切換為顯示時(shí),可能需要調(diào)用此方法 | — |
sort | 手動(dòng)對 Table 進(jìn)行排序。參數(shù)prop 屬性指定排序列,order 指定排序順序。 | prop: string, order: string |
TablePlus column
參數(shù) | 說明 | 類型 | 可選值 | 默認(rèn)值 |
---|---|---|---|---|
type | 對應(yīng)列的類型。如果設(shè)置了 selection 則顯示多選框;如果設(shè)置了 index 則顯示該行的索引(從 1 開始計(jì)算);如果設(shè)置了 expand 則顯示為一個(gè)可展開的按鈕 | string | selection/index/expand/handler | — |
index | 如果設(shè)置了 type=index ,可以通過傳遞 index 屬性來自定義索引 | number, Function(index) | - | - |
column-key | column 的 key,如果需要使用 filter-change 事件,則需要此屬性標(biāo)識(shí)是哪個(gè) column 的篩選條件 | string | — | — |
label | 顯示的標(biāo)題 | string | — | — |
prop | 對應(yīng)列內(nèi)容的字段名,也可以使用 property 屬性 | string | — | — |
width | 對應(yīng)列的寬度 | string | — | — |
min-width | 對應(yīng)列的最小寬度,與 width 的區(qū)別是 width 是固定的,min-width 會(huì)把剩余寬度按比例分配給設(shè)置了 min-width 的列 | string | — | — |
fixed | 列是否固定在左側(cè)或者右側(cè),true 表示固定在左側(cè) | string, boolean | true, left, right | — |
render-header | 列標(biāo)題 Label 區(qū)域渲染使用的 Function | Function(h, { column, $index }) | — | — |
sortable | 對應(yīng)列是否可以排序,如果設(shè)置為 'custom',則代表用戶希望遠(yuǎn)程排序,需要監(jiān)聽 Table 的 sort-change 事件 | boolean, string | true, false, 'custom' | false |
sort-method | 對數(shù)據(jù)進(jìn)行排序的時(shí)候使用的方法,僅當(dāng) sortable 設(shè)置為 true 的時(shí)候有效,需返回一個(gè)數(shù)字,和 Array.sort 表現(xiàn)一致 | Function(a, b) | — | — |
sort-by | 指定數(shù)據(jù)按照哪個(gè)屬性進(jìn)行排序,僅當(dāng) sortable 設(shè)置為 true 且沒有設(shè)置 sort-method 的時(shí)候有效。如果 sort-by 為數(shù)組,則先按照第 1 個(gè)屬性排序,如果第 1 個(gè)相等,再按照第 2 個(gè)排序,以此類推 | String/Array/Function(row, index) | — | — |
sort-orders | 數(shù)據(jù)在排序時(shí)所使用排序策略的輪轉(zhuǎn)順序,僅當(dāng) sortable 為 true 時(shí)有效。需傳入一個(gè)數(shù)組,隨著用戶點(diǎn)擊表頭,該列依次按照數(shù)組中元素的順序進(jìn)行排序 | array | 數(shù)組中的元素需為以下三者之一:ascending 表示升序,descending 表示降序,null 表示還原為原始順序 | ['ascending', 'descending', null] |
resizable | 對應(yīng)列是否可以通過拖動(dòng)改變寬度(需要在 el-table 上設(shè)置 border 屬性為真) | boolean | — | true |
formatter | 用來格式化內(nèi)容 | Function(row, column, cellValue, index) | — | — |
show-overflow-tooltip | 當(dāng)內(nèi)容過長被隱藏時(shí)顯示 tooltip | Boolean | — | false |
align | 對齊方式 | String | left/center/right | left |
header-align | 表頭對齊方式,若不設(shè)置該項(xiàng),則使用表格的對齊方式 | String | left/center/right | — |
class-name | 列的 className | string | — | — |
label-class-name | 當(dāng)前列標(biāo)題的自定義類名 | string | — | — |
selectable | 僅對 type=selection 的列有效,類型為 Function,F(xiàn)unction 的返回值用來決定這一行的 CheckBox 是否可以勾選 | Function(row, index) | — | — |
reserve-selection | 僅對 type=selection 的列有效,類型為 Boolean,為 true 則會(huì)在數(shù)據(jù)更新之后保留之前選中的數(shù)據(jù)(需指定 row-key ) | Boolean | — | false |
filters | 數(shù)據(jù)過濾的選項(xiàng),數(shù)組格式,數(shù)組中的元素需要有 text 和 value 屬性。 | Array[{ text, value }] | — | — |
filter-placement | 過濾彈出框的定位 | String | 與 Tooltip 的 placement 屬性相同 | — |
filter-multiple | 數(shù)據(jù)過濾的選項(xiàng)是否多選 | Boolean | — | true |
filter-method | 數(shù)據(jù)過濾使用的方法,如果是多選的篩選項(xiàng),對每一條數(shù)據(jù)會(huì)執(zhí)行多次,任意一次返回 true 就會(huì)顯示。 | Function(value, row, column) | — | — |
filtered-value | 選中的數(shù)據(jù)過濾項(xiàng),如果需要自定義表頭過濾的渲染方式,可能會(huì)需要此屬性。 | Array | — | — |
-分割線- | --- | --- | --- | --- |
slotHeaderName | 自定義表頭插槽名字 | string | - | - |
TablePlus spanConfig
參數(shù) | 說明 | 類型 | 可選值 | 默認(rèn)值 |
---|---|---|---|---|
key | 根據(jù)key 合并 | string | - | - |
propList | 需要合并的prop或者property 的key值 | array | [] | |
children | 平鋪轉(zhuǎn)換列表對應(yīng)的key,傳children內(nèi)部會(huì)幫轉(zhuǎn)換,否則需要自己轉(zhuǎn)換 | string | — | children |
基本用法
自定義列的顯示內(nèi)容,可組合其他組件使用。
:::demo 通過 Scoped slot 可以獲取到 row, column, $index 和 store(table 內(nèi)部的狀態(tài)管理)的數(shù)據(jù),用法參考 demo。
<div> <d-table-plus :columns="columns" :data="tableData"> <template #date="{row}"> <i class="el-icon-time"></i> <span style="margin-left: 10px">{{ row.date }}</span> </template> <template #handler="{ row }"> <el-button type="text" size="small" @click="handlerAdd(row)" >新增</el-button > <el-button type="text" size="small">編輯</el-button> </template> </d-table-plus> </div> <script> export default { data() { return { columns: [ { label: '日期', prop: 'date', align: 'center', slotName: 'date', }, { label: '姓名', width: '100px', prop: 'name', required: true, align: 'center', formatter: (row) => `${row.name}1111`, }, { label: '省份', prop: 'province', }, { label: '市區(qū)', prop: 'city', }, { label: '地址', prop: 'address', showOverflowTooltip: true, }, { label: '操作', type: 'handler', width: '150px', fixed: 'right', slotName: 'handler', }, ], tableData: [ { date: '2016-05-02', name: '王小虎', province: '上海', city: '普陀區(qū)', address: '上海市普陀區(qū)金沙江路 1518 弄', zip: 200333, }, { date: '2016-05-04', name: '王小虎', province: '上海', city: '普陀區(qū)', address: '上海市普陀區(qū)金沙江路 1517 弄', zip: 200333, }, { date: '2016-05-01', name: '王小虎', province: '上海', city: '普陀區(qū)', address: '上海市普陀區(qū)金沙江路 1519 弄', zip: 200333, }, { date: '2016-05-03', name: '王小虎', province: '上海', city: '普陀區(qū)', address: '上海市普陀區(qū)金沙江路 1516 弄', zip: 200333, }, ], }; }, }; </script>
到此這篇關(guān)于vue基于el-table拓展之table-plus組件的文章就介紹到這了,更多相關(guān)vue table-plus內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Vue中Table組件Select的勾選和取消勾選事件詳解
- vue element-ui table組件動(dòng)態(tài)生成表頭和數(shù)據(jù)并修改單元格格式 父子組件通信
- Ant-design-vue Table組件customRow屬性的使用說明
- vxe-table vue table 表格組件功能
- Vue中Table組件行內(nèi)右鍵菜單實(shí)現(xiàn)方法(基于 vue + AntDesign)
- bootstrap-table formatter 使用vue組件的方法
- 基于vue2的table分頁組件實(shí)現(xiàn)方法
- 封裝Vue Element的table表格組件的示例詳解
- vue項(xiàng)目中將element-ui table表格寫成組件的實(shí)現(xiàn)代碼
- Vue封裝通用table組件的完整步驟記錄
相關(guān)文章
在vue-cli的組件模板里使用font-awesome的兩種方法
今天小編就為大家分享一篇在vue-cli的組件模板里使用font-awesome的兩種方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09Vue單頁及多頁應(yīng)用全局配置404頁面實(shí)踐記錄
無論單頁還是多頁,我的實(shí)現(xiàn)思路是總體配置404頁面的思路就是在前端路由表中添加一個(gè) path: '/404' 的路由,渲染相應(yīng)的404頁面。這篇文章主要介紹了Vue單頁及多頁應(yīng)用全局配置404頁面實(shí)踐,需要的朋友可以參考下2018-05-05前端Vue中常用rules校驗(yàn)規(guī)則(輪子)如電話身份證郵箱等校驗(yàn)方法例子
當(dāng)我們在開發(fā)應(yīng)用時(shí)經(jīng)常需要對表單進(jìn)行校驗(yàn),以確保用戶輸入的數(shù)據(jù)符合預(yù)期,這篇文章主要給大家介紹了關(guān)于前端Vue中常用rules校驗(yàn)規(guī)則(輪子)如電話身份證郵箱等校驗(yàn)方法的相關(guān)資料,需要的朋友可以參考下2023-12-12element-ui中的select下拉列表設(shè)置默認(rèn)值方法
今天小編就為大家分享一篇element-ui中的select下拉列表設(shè)置默認(rèn)值方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08vue3輸入無效路由跳轉(zhuǎn)到指定error頁面問題
這篇文章主要介紹了vue3輸入無效路由跳轉(zhuǎn)到指定error頁面問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03Vue插槽_特殊特性slot,slot-scope與指令v-slot說明
這篇文章主要介紹了Vue插槽_特殊特性slot,slot-scope與指令v-slot說明,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09