vxe-table 3.24.0-beta.0 → 3.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/grid/src/grid.js +2 -2
- package/es/style.css +1 -1
- package/es/table/module/edit/mixin.js +3 -1
- package/es/table/module/export/mixin.js +6 -4
- package/es/table/module/filter/mixin.js +4 -2
- package/es/table/module/filter/panel.js +4 -2
- package/es/table/src/body.js +4 -2
- package/es/table/src/cell.js +11 -6
- package/es/table/src/columnInfo.js +2 -1
- package/es/table/src/footer.js +2 -1
- package/es/table/src/header.js +5 -3
- package/es/table/src/methods.js +7 -4
- package/es/table/src/props.js +4 -0
- package/es/table/src/table.js +7 -1
- package/es/toolbar/src/toolbar.js +5 -4
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +2 -2
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +66 -36
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/edit/mixin.js +3 -1
- package/lib/table/module/edit/mixin.min.js +1 -1
- package/lib/table/module/export/mixin.js +6 -4
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/module/filter/mixin.js +4 -2
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/module/filter/panel.js +4 -2
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/src/body.js +4 -2
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +11 -6
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/columnInfo.js +2 -1
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/footer.js +2 -1
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +5 -3
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +5 -5
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/props.js +4 -0
- package/lib/table/src/props.min.js +1 -1
- package/lib/table/src/table.js +7 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +5 -4
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +2 -2
- package/packages/table/module/edit/mixin.ts +3 -1
- package/packages/table/module/export/mixin.ts +6 -4
- package/packages/table/module/filter/mixin.ts +6 -4
- package/packages/table/module/filter/panel.ts +4 -2
- package/packages/table/src/body.ts +4 -2
- package/packages/table/src/cell.ts +11 -6
- package/packages/table/src/columnInfo.ts +2 -1
- package/packages/table/src/footer.ts +2 -1
- package/packages/table/src/header.ts +5 -3
- package/packages/table/src/methods.ts +7 -4
- package/packages/table/src/props.ts +4 -0
- package/packages/table/src/table.ts +8 -1
- package/packages/toolbar/src/toolbar.ts +5 -4
- /package/es/{iconfont.1789131659648.ttf → iconfont.1789914697948.ttf} +0 -0
- /package/es/{iconfont.1789131659648.woff → iconfont.1789914697948.woff} +0 -0
- /package/es/{iconfont.1789131659648.woff2 → iconfont.1789914697948.woff2} +0 -0
- /package/lib/{iconfont.1789131659648.ttf → iconfont.1789914697948.ttf} +0 -0
- /package/lib/{iconfont.1789131659648.woff → iconfont.1789914697948.woff} +0 -0
- /package/lib/{iconfont.1789131659648.woff2 → iconfont.1789914697948.woff2} +0 -0
|
@@ -25,9 +25,10 @@ function updatePopupStyle ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
|
|
|
25
25
|
}
|
|
26
26
|
const tableEl = $xeTable.$refs.refElem as HTMLDivElement
|
|
27
27
|
const filterOpts = $xeTable.computeFilterOpts
|
|
28
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
28
29
|
const { maxHeight: customMaxHeight, transfer, zIndex } = filterOpts
|
|
29
30
|
const filterRender = column ? column.filterRender : null
|
|
30
|
-
const compConf = filterRender && isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
31
|
+
const compConf = filterRender && isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
31
32
|
|
|
32
33
|
const headerScrollElem = getRefElem(elemStore['main-header-scroll'])
|
|
33
34
|
if (!headerScrollElem) {
|
|
@@ -464,13 +465,14 @@ export default {
|
|
|
464
465
|
$xeTable.handleColumnConfirmFilter(column, evnt)
|
|
465
466
|
}
|
|
466
467
|
},
|
|
467
|
-
handleClearFilter (column:
|
|
468
|
+
handleClearFilter (column: VxeTableDefines.ColumnInfo) {
|
|
468
469
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
469
470
|
|
|
470
471
|
if (column) {
|
|
471
472
|
const { filters, filterRender } = column
|
|
472
473
|
if (filters) {
|
|
473
|
-
const
|
|
474
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
475
|
+
const compConf = isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
474
476
|
const filterResetMethod = column.filterResetMethod || (compConf ? (compConf.tableFilterResetMethod || compConf.filterResetMethod) : null)
|
|
475
477
|
filters.forEach((item: any) => {
|
|
476
478
|
item._checked = false
|
|
@@ -480,7 +482,7 @@ export default {
|
|
|
480
482
|
}
|
|
481
483
|
})
|
|
482
484
|
if (filterResetMethod) {
|
|
483
|
-
filterResetMethod({ options: filters, column, $table: $xeTable })
|
|
485
|
+
filterResetMethod({ options: filters as VxeTableDefines.FilterOption[], column, $table: $xeTable })
|
|
484
486
|
}
|
|
485
487
|
}
|
|
486
488
|
}
|
|
@@ -258,9 +258,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
258
258
|
return []
|
|
259
259
|
}
|
|
260
260
|
const filterOpts = $xeTable.computeFilterOpts
|
|
261
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
261
262
|
const hasCheckOption = $xeFilterPanel.computeHasCheckOption
|
|
262
263
|
const { filterRender, filterMultiple } = column
|
|
263
|
-
const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
264
|
+
const compConf = filterRender && isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
264
265
|
const isDisabled = !hasCheckOption && !filterStore.isAllSelected && !filterStore.isIndeterminate
|
|
265
266
|
return filterMultiple && (compConf ? !(compConf.showTableFilterFooter === false || compConf.showFilterFooter === false || compConf.isFooter === false) : true)
|
|
266
267
|
? [
|
|
@@ -298,8 +299,9 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
298
299
|
if (!column) {
|
|
299
300
|
return renderEmptyElement($xeFilterPanel)
|
|
300
301
|
}
|
|
302
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
301
303
|
const filterRender = column ? column.filterRender : null
|
|
302
|
-
const compConf = filterRender && isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
304
|
+
const compConf = filterRender && isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
303
305
|
const filterClassName = compConf ? (compConf.tableFilterClassName || compConf.filterClassName) : ''
|
|
304
306
|
const params = Object.assign({}, tableInternalData._currFilterParams, { $panel: $xeFilterPanel, $table: $xeTable })
|
|
305
307
|
const tableProps = $xeTable
|
|
@@ -117,6 +117,7 @@ function renderTdColumn (
|
|
|
117
117
|
const tooltipOpts = $xeTable.computeTooltipOpts
|
|
118
118
|
const virtualXOpts = $xeTable.computeVirtualXOpts
|
|
119
119
|
const virtualYOpts = $xeTable.computeVirtualYOpts
|
|
120
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
120
121
|
const { isAllColumnDrag, isAllRowDrag } = $xeTable.resizableOpts
|
|
121
122
|
const rowOpts = $xeTable.computeRowOpts
|
|
122
123
|
const rowDragOpts = $xeTable.computeRowDragOpts
|
|
@@ -135,7 +136,7 @@ function renderTdColumn (
|
|
|
135
136
|
const colid = column.id
|
|
136
137
|
const colRest = fullColumnIdData[colid] || {}
|
|
137
138
|
const renderOpts = editRender || cellRender
|
|
138
|
-
const compConf = renderOpts ? renderer.get(renderOpts.name) : null
|
|
139
|
+
const compConf = renderOpts && renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null
|
|
139
140
|
const compCellClassName = compConf ? (compConf.tableCellClassName || compConf.cellClassName) : null
|
|
140
141
|
const compCellStyle = compConf ? (compConf.tableCellStyle || compConf.cellStyle) : ''
|
|
141
142
|
const showAllTip = tooltipOpts.showAll
|
|
@@ -862,7 +863,8 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
862
863
|
if (emptySlot) {
|
|
863
864
|
emptyContent = emptySlot.call($xeTable, emptyParams)
|
|
864
865
|
} else {
|
|
865
|
-
const
|
|
866
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
867
|
+
const compConf = emptyOpts.name ? (rendererOpts[emptyOpts.name] || renderer.get(emptyOpts.name)) : null
|
|
866
868
|
const rtEmptyView = compConf ? (compConf.renderTableEmpty || compConf.renderTableEmptyView || compConf.renderEmpty) : null
|
|
867
869
|
if (rtEmptyView) {
|
|
868
870
|
emptyContent = getSlotVNs(rtEmptyView.call($xeTable, h, emptyOpts, emptyParams))
|
|
@@ -245,7 +245,8 @@ function getFooterContent (h: CreateElement, params: VxeTableDefines.CellRenderF
|
|
|
245
245
|
const renderOpts = editRenderOpts || cellRenderOpts
|
|
246
246
|
const itemValue = $table.getFooterCellLabel(row, column)
|
|
247
247
|
if (renderOpts) {
|
|
248
|
-
const
|
|
248
|
+
const rendererOpts = $table.computeRendererOpts
|
|
249
|
+
const compConf = renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null
|
|
249
250
|
const rtFooter = compConf ? (compConf.renderTableFooter || compConf.renderFooter) : null
|
|
250
251
|
if (rtFooter) {
|
|
251
252
|
const footParams = Object.assign(params, {
|
|
@@ -387,7 +388,8 @@ export const Cell = {
|
|
|
387
388
|
}
|
|
388
389
|
|
|
389
390
|
if (renderOpts) {
|
|
390
|
-
const
|
|
391
|
+
const rendererOpts = $table.computeRendererOpts
|
|
392
|
+
const compConf = renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null
|
|
391
393
|
const rtHeader = compConf ? (compConf.renderTableHeader || compConf.renderHeader) : null
|
|
392
394
|
if (rtHeader) {
|
|
393
395
|
return getSlotVNs(renderTitleContent(h, params, rtHeader.call($table, h, renderOpts, params))) as VNode[]
|
|
@@ -477,9 +479,10 @@ export const Cell = {
|
|
|
477
479
|
if (defaultSlot) {
|
|
478
480
|
return renderCellBaseVNs(h, params, $table.callSlot(defaultSlot, params, h))
|
|
479
481
|
}
|
|
482
|
+
const rendererOpts = $table.computeRendererOpts
|
|
480
483
|
// 如果是编辑模式-查看:slot default > formatter > cellRender.renderTableDefault > editRender.renderTableCell > editRender.renderTableDefault > cellRender.tableCellFormatter > editRender.tableCellFormatter > field
|
|
481
484
|
// 如果是查看表格:slot default > formatter > cellRender。renderTableDefault > cellRender.tableCellFormatter > field
|
|
482
|
-
const cellCompConf = cellRenderOpts ? renderer.get(cellRenderOpts.name) : null
|
|
485
|
+
const cellCompConf = cellRenderOpts && cellRenderOpts.name ? (rendererOpts[cellRenderOpts.name] || renderer.get(cellRenderOpts.name)) : null
|
|
483
486
|
if (cellRenderOpts) {
|
|
484
487
|
const cellDefaultRenderFn = cellCompConf ? (cellCompConf.renderTableDefault || cellCompConf.renderDefault) : null
|
|
485
488
|
if (cellDefaultRenderFn && cellRenderOpts) {
|
|
@@ -487,7 +490,7 @@ export const Cell = {
|
|
|
487
490
|
}
|
|
488
491
|
}
|
|
489
492
|
if (editRenderOpts) {
|
|
490
|
-
const editCompConf = editRenderOpts ? renderer.get(editRenderOpts.name) : null
|
|
493
|
+
const editCompConf = editRenderOpts && editRenderOpts.name ? (rendererOpts[editRenderOpts.name] || renderer.get(editRenderOpts.name)) : null
|
|
491
494
|
const editCellRenderFn = editCompConf
|
|
492
495
|
? (
|
|
493
496
|
(editCompConf.renderTableCell || editCompConf.renderCell) ||
|
|
@@ -1063,7 +1066,8 @@ export const Cell = {
|
|
|
1063
1066
|
return $table.callSlot(slots.content, params, h)
|
|
1064
1067
|
}
|
|
1065
1068
|
if (contentRender) {
|
|
1066
|
-
const
|
|
1069
|
+
const rendererOpts = $table.computeRendererOpts
|
|
1070
|
+
const compConf = contentRender.name ? (rendererOpts[contentRender.name] || renderer.get(contentRender.name)) : null
|
|
1067
1071
|
const rtExpand = compConf ? (compConf.renderTableExpand || compConf.renderExpand) : null
|
|
1068
1072
|
if (rtExpand) {
|
|
1069
1073
|
return getSlotVNs(rtExpand.call($table, h, contentRender, params))
|
|
@@ -1302,7 +1306,8 @@ export const Cell = {
|
|
|
1302
1306
|
if (slots && slots.edit) {
|
|
1303
1307
|
return $table.callSlot(slots.edit, cellParams, h)
|
|
1304
1308
|
}
|
|
1305
|
-
const
|
|
1309
|
+
const rendererOpts = $table.computeRendererOpts
|
|
1310
|
+
const compConf = editRenderOpts.name ? (rendererOpts[editRenderOpts.name] || renderer.get(editRenderOpts.name)) : null
|
|
1306
1311
|
const rtEdit = compConf ? (compConf.renderTableEdit || compConf.renderEdit) : null
|
|
1307
1312
|
if (rtEdit) {
|
|
1308
1313
|
return getSlotVNs(rtEdit.call($table, h, editRender, cellParams))
|
|
@@ -27,7 +27,8 @@ export class ColumnInfo {
|
|
|
27
27
|
const defaultVisible = XEUtils.isBoolean(visible) ? visible : true
|
|
28
28
|
const defaultRenderWidth = width && isPx(width) && width !== 'auto' ? Math.max(0, XEUtils.toInteger(width)) : 0
|
|
29
29
|
|
|
30
|
-
const
|
|
30
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
31
|
+
const flCompConf = filterRender && isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
31
32
|
const ctFilterOptions = flCompConf ? flCompConf.createTableFilterOptions : null
|
|
32
33
|
|
|
33
34
|
const filters = toFilters(colConfs.filters, colId)
|
|
@@ -35,13 +35,14 @@ function renderRows (h: CreateElement, _vm: any, isOptimizeMode: boolean, tableC
|
|
|
35
35
|
const cellOpts = $xeTable.computeCellOpts
|
|
36
36
|
const footerCellOpts = $xeTable.computeFooterCellOpts
|
|
37
37
|
const currCellHeight = getCalcHeight(footerCellOpts.height) || defaultRowHeight
|
|
38
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
38
39
|
|
|
39
40
|
return tableColumn.map((column, $columnIndex) => {
|
|
40
41
|
const { type, showFooterOverflow, footerAlign, align, footerClassName, editRender, cellRender } = column
|
|
41
42
|
const colid = column.id
|
|
42
43
|
const colRest = fullColumnIdData[colid] || {}
|
|
43
44
|
const renderOpts = editRender || cellRender
|
|
44
|
-
const compConf = renderOpts ? renderer.get(renderOpts.name) : null
|
|
45
|
+
const compConf = renderOpts && renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null
|
|
45
46
|
const showAllTip = footerTooltipOpts.showAll
|
|
46
47
|
const fixedHiddenColumn = overflowX && (fixedType ? column.fixed !== fixedType : !!column.fixed)
|
|
47
48
|
|
|
@@ -33,6 +33,7 @@ function renderRows (h: CreateElement, _vm: any, isGroup: boolean, isOptimizeMod
|
|
|
33
33
|
const cellOpts = $xeTable.computeCellOpts
|
|
34
34
|
const defaultRowHeight = $xeTable.computeDefaultRowHeight
|
|
35
35
|
const headerCellOpts = $xeTable.computeHeaderCellOpts
|
|
36
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
36
37
|
const currCellHeight = getCalcHeight(headerCellOpts.height) || defaultRowHeight
|
|
37
38
|
const { disabledMethod: dragDisabledMethod, isCrossDrag, isPeerDrag } = columnDragOpts
|
|
38
39
|
const isLastRow = _rowIndex === headerGroups.length - 1
|
|
@@ -43,7 +44,7 @@ function renderRows (h: CreateElement, _vm: any, isGroup: boolean, isOptimizeMod
|
|
|
43
44
|
const colid = column.id
|
|
44
45
|
const colRest = fullColumnIdData[colid] || {}
|
|
45
46
|
const renderOpts = editRender || cellRender
|
|
46
|
-
const compConf = renderOpts ? renderer.get(renderOpts.name) : null
|
|
47
|
+
const compConf = renderOpts && renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null
|
|
47
48
|
const isColGroup = column.children && column.children.length
|
|
48
49
|
const fixedHiddenColumn = overflowX && !isColGroup && (fixedType ? column.fixed !== fixedType : !!column.fixed)
|
|
49
50
|
|
|
@@ -244,6 +245,7 @@ function renderFilterRows (h: CreateElement, _vm: any, isOptimizeMode: boolean,
|
|
|
244
245
|
const defaultRowHeight = $xeTable.computeDefaultRowHeight
|
|
245
246
|
const headerCellOpts = $xeTable.computeHeaderCellOpts
|
|
246
247
|
const floatingFilterOpts = $xeTable.computeFloatingFilterOpts
|
|
248
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
247
249
|
const { cellClassName } = floatingFilterOpts
|
|
248
250
|
const currCellHeight = getCalcHeight(headerCellOpts.height) || defaultRowHeight
|
|
249
251
|
|
|
@@ -252,8 +254,8 @@ function renderFilterRows (h: CreateElement, _vm: any, isOptimizeMode: boolean,
|
|
|
252
254
|
const colid = column.id
|
|
253
255
|
const colRest = fullColumnIdData[colid] || {}
|
|
254
256
|
const renderOpts = editRender || cellRender
|
|
255
|
-
const compConf = renderOpts ? renderer.get(renderOpts.name) : null
|
|
256
|
-
const flCompConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
257
|
+
const compConf = renderOpts && renderOpts.name ? (rendererOpts[renderOpts.name] || renderer.get(renderOpts.name)) : null
|
|
258
|
+
const flCompConf = isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
257
259
|
const rtFloatingFilter = flCompConf ? flCompConf.renderTableFloatingFilter : null
|
|
258
260
|
const flSlot = slots ? (slots.floatingFilter || slots['floating-filter']) : null
|
|
259
261
|
const fixedHiddenColumn = overflowX && (fixedType ? column.fixed !== fixedType : !!column.fixed)
|
|
@@ -817,6 +817,7 @@ function updateAfterFullData ($xeTable: VxeTableConstructor & VxeTablePrivateMet
|
|
|
817
817
|
const filterOpts = $xeTable.computeFilterOpts
|
|
818
818
|
const sortOpts = $xeTable.computeSortOpts
|
|
819
819
|
const aggregateOpts = $xeTable.computeAggregateOpts
|
|
820
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
820
821
|
const treeOpts = $xeTable.computeTreeOpts
|
|
821
822
|
const childrenField = treeOpts.children || treeOpts.childrenField
|
|
822
823
|
const { transform, rowField, parentField, mapChildrenField } = treeOpts
|
|
@@ -862,7 +863,7 @@ function updateAfterFullData ($xeTable: VxeTableConstructor & VxeTablePrivateMet
|
|
|
862
863
|
const handleFilter = (row: any) => {
|
|
863
864
|
return filterColumns.every(({ column, valueList, itemList }) => {
|
|
864
865
|
const { filterMethod, filterRender } = column
|
|
865
|
-
const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
866
|
+
const compConf = isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
866
867
|
const compFilterMethod = compConf ? (compConf.tableFilterMethod || compConf.filterMethod) : null
|
|
867
868
|
const tdFilterMethod = compConf ? (compConf.tableFilterDefaultMethod || compConf.defaultTableFilterMethod || compConf.defaultFilterMethod) : null
|
|
868
869
|
const cellValue = getCellValue(row, column)
|
|
@@ -5762,6 +5763,7 @@ const tableMethods: any = {
|
|
|
5762
5763
|
}
|
|
5763
5764
|
const { editConfig } = props
|
|
5764
5765
|
const { formatter, editRender, cellRender } = column
|
|
5766
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
5765
5767
|
let etOpSize = null
|
|
5766
5768
|
let etOgSize = null
|
|
5767
5769
|
let clOpSize = null
|
|
@@ -5778,8 +5780,8 @@ const tableMethods: any = {
|
|
|
5778
5780
|
const editRenderOpts = formatter ? null : (isEnableEdit && isEnableConf(editRender) ? editRender : null)
|
|
5779
5781
|
const cellRenderOpts = formatter ? null : (isEnableConf(cellRender) ? cellRender : null)
|
|
5780
5782
|
// formatter > cellRender.tableCellFormatter > editRender.tableCellFormatter
|
|
5781
|
-
const cellCompConf = cellRenderOpts ? renderer.get(cellRenderOpts.name) : null
|
|
5782
|
-
const editCompConf = editRenderOpts ? renderer.get(editRenderOpts.name) : null
|
|
5783
|
+
const cellCompConf = cellRenderOpts && cellRenderOpts.name ? (rendererOpts[cellRenderOpts.name] || renderer.get(cellRenderOpts.name)) : null
|
|
5784
|
+
const editCompConf = editRenderOpts && editRenderOpts.name ? (rendererOpts[editRenderOpts.name] || renderer.get(editRenderOpts.name)) : null
|
|
5783
5785
|
const cellDfFormatter = cellCompConf ? cellCompConf.tableCellFormatter : null
|
|
5784
5786
|
const editDfFormatter = editCompConf ? editCompConf.tableCellFormatter : null
|
|
5785
5787
|
const cellValue = getCellValue(row, column)
|
|
@@ -7073,8 +7075,9 @@ const tableMethods: any = {
|
|
|
7073
7075
|
if (column) {
|
|
7074
7076
|
const { filterStore } = reactData
|
|
7075
7077
|
const { filterRender, filters } = column
|
|
7078
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
7076
7079
|
const filterOptions = filters || []
|
|
7077
|
-
const compConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
|
|
7080
|
+
const compConf = isEnableConf(filterRender) && filterRender.name ? (rendererOpts[filterRender.name] || renderer.get(filterRender.name)) : null
|
|
7078
7081
|
const frMethod = column.filterRecoverMethod || (compConf ? (compConf.tableFilterRecoverMethod || compConf.filterRecoverMethod) : null)
|
|
7079
7082
|
filterStore.column = column
|
|
7080
7083
|
// 复原状态
|
|
@@ -306,6 +306,10 @@ export const tableProps = {
|
|
|
306
306
|
animat: { type: Boolean, default: () => getConfig().table.animat },
|
|
307
307
|
// (可能会被废弃的参数,不要使用)
|
|
308
308
|
delayHover: { type: Number, default: () => getConfig().table.delayHover },
|
|
309
|
+
/**
|
|
310
|
+
* 渲染器配置项
|
|
311
|
+
*/
|
|
312
|
+
rendererConfig: Object as PropType<VxeTablePropTypes.RendererConfig>,
|
|
309
313
|
// 额外的参数
|
|
310
314
|
params: Object as PropType<VxeTablePropTypes.Params>
|
|
311
315
|
}
|
|
@@ -173,7 +173,8 @@ function renderEmptyBody (h: CreateElement, $xeTable: VxeTableConstructor & VxeT
|
|
|
173
173
|
if (emptySlot) {
|
|
174
174
|
emptyContent = emptySlot.call($xeTable, emptyParams)
|
|
175
175
|
} else {
|
|
176
|
-
const
|
|
176
|
+
const rendererOpts = $xeTable.computeRendererOpts
|
|
177
|
+
const compConf = emptyOpts.name ? (rendererOpts[emptyOpts.name] || renderer.get(emptyOpts.name)) : null
|
|
177
178
|
const rtEmptyView = compConf ? (compConf.renderTableEmpty || compConf.renderTableEmptyView || compConf.renderEmpty) : null
|
|
178
179
|
if (rtEmptyView) {
|
|
179
180
|
emptyContent = getSlotVNs(rtEmptyView.call($xeTable, h, emptyOpts, emptyParams))
|
|
@@ -1489,6 +1490,12 @@ export default {
|
|
|
1489
1490
|
|
|
1490
1491
|
return Object.assign({}, getConfig().table.undoRedoHistoryConfig, props.undoRedoHistoryConfig)
|
|
1491
1492
|
},
|
|
1493
|
+
computeRendererOpts () {
|
|
1494
|
+
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
1495
|
+
const props = $xeTable
|
|
1496
|
+
|
|
1497
|
+
return Object.assign({}, getConfig().table.rendererConfig, props.rendererConfig)
|
|
1498
|
+
},
|
|
1492
1499
|
combineTabsResizeFlag () {
|
|
1493
1500
|
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
1494
1501
|
const $xeTabs = $xeTable.$xeTabs
|
|
@@ -486,10 +486,11 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
486
486
|
const buttonSuffixSlot = slots.buttonSuffix || slots['button-suffix']
|
|
487
487
|
const btnVNs: VxeComponentSlotType[] = []
|
|
488
488
|
if (buttons) {
|
|
489
|
+
const rendererOpts = ($table ? $table.computeRendererOpts : null) || {}
|
|
489
490
|
buttons.forEach((item) => {
|
|
490
491
|
const { dropdowns, buttonRender } = item
|
|
491
492
|
if (item.visible !== false) {
|
|
492
|
-
const compConf = buttonRender ? renderer.get(buttonRender.name) : null
|
|
493
|
+
const compConf = buttonRender && buttonRender.name ? (rendererOpts[buttonRender.name] || renderer.get(buttonRender.name)) : null
|
|
493
494
|
if (buttonRender && compConf && compConf.renderToolbarButton) {
|
|
494
495
|
const toolbarButtonClassName = compConf.toolbarButtonClassName
|
|
495
496
|
const params = { $grid: $xeGrid, $gantt: $xeGantt, $table: $table!, button: item }
|
|
@@ -555,17 +556,17 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
555
556
|
const toolSuffixSlot = slots.toolSuffix || slots['tool-suffix']
|
|
556
557
|
const btnVNs: VxeComponentSlotType[] = []
|
|
557
558
|
if (tools) {
|
|
559
|
+
const rendererOpts = ($table ? $table.computeRendererOpts : null) || {}
|
|
558
560
|
tools.forEach((item, tIndex) => {
|
|
559
561
|
const { dropdowns, toolRender } = item
|
|
560
562
|
if (item.visible !== false) {
|
|
561
|
-
const
|
|
562
|
-
const compConf = toolRender ? renderer.get(rdName) : null
|
|
563
|
+
const compConf = toolRender && toolRender.name ? (rendererOpts[toolRender.name] || renderer.get(toolRender.name)) : null
|
|
563
564
|
if (toolRender && compConf && compConf.renderToolbarTool) {
|
|
564
565
|
const toolbarToolClassName = compConf.toolbarToolClassName
|
|
565
566
|
const params = { $grid: $xeGrid, $gantt: $xeGantt, $table: $table!, tool: item }
|
|
566
567
|
btnVNs.push(
|
|
567
568
|
h('span', {
|
|
568
|
-
key:
|
|
569
|
+
key: tIndex,
|
|
569
570
|
class: ['vxe-tool--item', toolbarToolClassName ? (XEUtils.isFunction(toolbarToolClassName) ? toolbarToolClassName(params) : toolbarToolClassName) : '']
|
|
570
571
|
}, getSlotVNs(compConf.renderToolbarTool(h, toolRender, params)))
|
|
571
572
|
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|