vxe-table 3.13.21 → 3.13.23
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 +51 -40
- package/es/style.css +1 -1
- package/es/table/module/filter/panel.js +12 -2
- package/es/table/module/keyboard/mixin.js +50 -6
- package/es/table/src/methods.js +2 -2
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +58 -57
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +124 -74
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/filter/panel.js +8 -2
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/module/keyboard/mixin.js +52 -9
- package/lib/table/module/keyboard/mixin.min.js +1 -1
- package/lib/table/src/methods.js +3 -2
- package/lib/table/src/methods.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 +61 -48
- package/packages/table/module/filter/panel.ts +12 -2
- package/packages/table/module/keyboard/mixin.ts +52 -8
- package/packages/table/src/methods.ts +3 -2
- /package/es/{iconfont.1741336846919.ttf → iconfont.1741744075377.ttf} +0 -0
- /package/es/{iconfont.1741336846919.woff → iconfont.1741744075377.woff} +0 -0
- /package/es/{iconfont.1741336846919.woff2 → iconfont.1741744075377.woff2} +0 -0
- /package/lib/{iconfont.1741336846919.ttf → iconfont.1741744075377.ttf} +0 -0
- /package/lib/{iconfont.1741336846919.woff → iconfont.1741744075377.woff} +0 -0
- /package/lib/{iconfont.1741336846919.woff2 → iconfont.1741744075377.woff2} +0 -0
package/lib/ui/index.js
CHANGED
|
@@ -13,7 +13,7 @@ Object.defineProperty(exports, "VxeUI", {
|
|
|
13
13
|
exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
|
|
14
14
|
var _core = require("@vxe-ui/core");
|
|
15
15
|
var _utils = require("./src/utils");
|
|
16
|
-
const version = exports.version = "3.13.
|
|
16
|
+
const version = exports.version = "3.13.23";
|
|
17
17
|
_core.VxeUI.version = version;
|
|
18
18
|
_core.VxeUI.tableVersion = version;
|
|
19
19
|
_core.VxeUI.setConfig({
|
package/lib/ui/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="3.13.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");let version=exports.version="3.13.23",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion=version,_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,padding:!0,minHeight:144,resizeConfig:{},resizableConfig:{dragMode:"auto",showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single",theme:"beautify"},columnConfig:{maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:"unset"},footerCellConfig:{height:"unset"},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0,mode:"fixed"},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{enabled:!0,gt:60,preSize:0,oSize:1},virtualYConfig:{enabled:!0,gt:100,preSize:1,oSize:2},scrollbarConfig:{}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TABLE_DRAG_ROW:iconPrefix+"drag-handle",TABLE_DRAG_COLUMN:iconPrefix+"drag-handle",TABLE_DRAG_STATUS_ROW:iconPrefix+"sort",TABLE_DRAG_STATUS_SUB_ROW:iconPrefix+"add-sub",TABLE_DRAG_STATUS_COLUMN:iconPrefix+"swap",TABLE_DRAG_DISABLED:iconPrefix+"no-drop",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
|
package/lib/ui/src/log.js
CHANGED
|
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
|
|
|
8
8
|
const {
|
|
9
9
|
log
|
|
10
10
|
} = _core.VxeUI;
|
|
11
|
-
const version = `table v${"3.13.
|
|
11
|
+
const version = `table v${"3.13.23"}`;
|
|
12
12
|
const warnLog = exports.warnLog = log.create('warn', version);
|
|
13
13
|
const errLog = exports.errLog = log.create('error', version);
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v3.13.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,version="table v3.13.23",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "3.13.
|
|
3
|
+
"version": "3.13.23",
|
|
4
4
|
"description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、拖拽排序,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"style": "lib/style.css",
|
|
29
29
|
"typings": "types/index.d.ts",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"vxe-pc-ui": "^3.4.
|
|
31
|
+
"vxe-pc-ui": "^3.4.9"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@babel/plugin-transform-modules-commonjs": "^7.25.7",
|
|
@@ -10,7 +10,7 @@ import { getSlotVNs } from '../../ui/src/vn'
|
|
|
10
10
|
import { warnLog, errLog } from '../../ui/src/log'
|
|
11
11
|
|
|
12
12
|
import type { VxeFormComponent, VxePagerComponent, VxeComponentStyleType } from 'vxe-pc-ui'
|
|
13
|
-
import type{ GridReactData, VxeGridConstructor, VxeGridPropTypes } from '../../../types'
|
|
13
|
+
import type{ GridReactData, VxeGridConstructor, VxeGridPropTypes, VxeGridPrivateMethods, VxePagerDefines } from '../../../types'
|
|
14
14
|
|
|
15
15
|
const { getConfig, getI18n, commands, globalEvents, globalMixins, renderEmptyElement } = VxeUI
|
|
16
16
|
|
|
@@ -85,6 +85,26 @@ function getFuncSlot ($xeGrid: any, optSlots: any, slotKey: any) {
|
|
|
85
85
|
return null
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
+
const getConfigSlot = ($xeGrid: VxeGridConstructor, slotConfigs?: Record<string, any>) => {
|
|
89
|
+
const slots = $xeGrid.$scopedSlots
|
|
90
|
+
|
|
91
|
+
const slotConf: Record<string, any> = {}
|
|
92
|
+
XEUtils.objectMap(slotConfigs, (slotFunc, slotKey) => {
|
|
93
|
+
if (slotFunc) {
|
|
94
|
+
if (XEUtils.isString(slotFunc)) {
|
|
95
|
+
if (slots[slotFunc]) {
|
|
96
|
+
slotConf[slotKey] = slots[slotFunc]
|
|
97
|
+
} else {
|
|
98
|
+
errLog('vxe.error.notSlot', [slotFunc])
|
|
99
|
+
}
|
|
100
|
+
} else {
|
|
101
|
+
slotConf[slotKey] = slotFunc
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
})
|
|
105
|
+
return slotConf
|
|
106
|
+
}
|
|
107
|
+
|
|
88
108
|
function getToolbarSlots (_vm: any) {
|
|
89
109
|
const { $scopedSlots, toolbarOpts } = _vm
|
|
90
110
|
const toolbarOptSlots = toolbarOpts.slots
|
|
@@ -112,25 +132,6 @@ function getToolbarSlots (_vm: any) {
|
|
|
112
132
|
return slots
|
|
113
133
|
}
|
|
114
134
|
|
|
115
|
-
function getPagerSlots (_vm: any) {
|
|
116
|
-
const { pagerOpts } = _vm
|
|
117
|
-
const pagerOptSlots = pagerOpts.slots
|
|
118
|
-
const slots: any = {}
|
|
119
|
-
let leftSlot
|
|
120
|
-
let rightSlot
|
|
121
|
-
if (pagerOptSlots) {
|
|
122
|
-
leftSlot = getFuncSlot(_vm, pagerOptSlots, 'left')
|
|
123
|
-
rightSlot = getFuncSlot(_vm, pagerOptSlots, 'right')
|
|
124
|
-
if (leftSlot) {
|
|
125
|
-
slots.left = leftSlot
|
|
126
|
-
}
|
|
127
|
-
if (rightSlot) {
|
|
128
|
-
slots.right = rightSlot
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return slots
|
|
132
|
-
}
|
|
133
|
-
|
|
134
135
|
function getTableOns (_vm: any) {
|
|
135
136
|
const { $listeners, proxyConfig, proxyOpts } = _vm
|
|
136
137
|
const ons: any = {}
|
|
@@ -150,6 +151,24 @@ function getTableOns (_vm: any) {
|
|
|
150
151
|
return ons
|
|
151
152
|
}
|
|
152
153
|
|
|
154
|
+
function pageChangeEvent ($xeGrid: VxeGridConstructor & VxeGridPrivateMethods, params: VxePagerDefines.PageChangeEventParams) {
|
|
155
|
+
const props = $xeGrid
|
|
156
|
+
const reactData = $xeGrid as unknown as GridReactData
|
|
157
|
+
|
|
158
|
+
const { proxyConfig } = props
|
|
159
|
+
const { tablePage } = reactData
|
|
160
|
+
const { $event, currentPage, pageSize } = params
|
|
161
|
+
const proxyOpts = $xeGrid.computeProxyOpts
|
|
162
|
+
tablePage.currentPage = currentPage
|
|
163
|
+
tablePage.pageSize = pageSize
|
|
164
|
+
$xeGrid.dispatchEvent('page-change', params, $event)
|
|
165
|
+
if (proxyConfig && isEnableConf(proxyOpts)) {
|
|
166
|
+
$xeGrid.commitProxy('query').then((rest) => {
|
|
167
|
+
$xeGrid.dispatchEvent('proxy-query', rest, $event)
|
|
168
|
+
})
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
153
172
|
/**
|
|
154
173
|
* 渲染表单
|
|
155
174
|
*/
|
|
@@ -271,39 +290,45 @@ function renderBottom (h: CreateElement, _vm: any) {
|
|
|
271
290
|
/**
|
|
272
291
|
* 渲染分页
|
|
273
292
|
*/
|
|
274
|
-
function renderPager (h: CreateElement, $xeGrid:
|
|
293
|
+
function renderPager (h: CreateElement, $xeGrid: VxeGridConstructor & VxeGridPrivateMethods) {
|
|
275
294
|
const VxeUIPagerComponent = VxeUI.getComponent<VxePagerComponent>('VxePager')
|
|
276
295
|
const props = $xeGrid
|
|
296
|
+
const slots = $xeGrid.$scopedSlots
|
|
297
|
+
const reactData = $xeGrid as unknown as GridReactData
|
|
277
298
|
|
|
278
|
-
const {
|
|
279
|
-
const
|
|
280
|
-
const
|
|
281
|
-
const
|
|
282
|
-
|
|
283
|
-
if (hasPager) {
|
|
299
|
+
const { proxyConfig, pagerConfig } = props
|
|
300
|
+
const proxyOpts = $xeGrid.computeProxyOpts
|
|
301
|
+
const pagerOpts = $xeGrid.computePagerOpts
|
|
302
|
+
const pagerSlot = slots.pager
|
|
303
|
+
if ((pagerConfig && isEnableConf(pagerOpts)) || slots.pager) {
|
|
284
304
|
return h('div', {
|
|
285
|
-
key: 'pager',
|
|
286
305
|
ref: 'refPagerWrapper',
|
|
306
|
+
key: 'pager',
|
|
287
307
|
class: 'vxe-grid--pager-wrapper'
|
|
288
308
|
}, pagerSlot
|
|
289
|
-
? pagerSlot.call($xeGrid, { $grid: $xeGrid }
|
|
309
|
+
? pagerSlot.call($xeGrid, { $grid: $xeGrid })
|
|
290
310
|
: [
|
|
291
311
|
VxeUIPagerComponent
|
|
292
312
|
? h(VxeUIPagerComponent, {
|
|
293
|
-
|
|
313
|
+
ref: 'refPager',
|
|
314
|
+
props: {
|
|
315
|
+
...pagerOpts,
|
|
316
|
+
...(proxyConfig && isEnableConf(proxyOpts) ? reactData.tablePage : {})
|
|
317
|
+
},
|
|
294
318
|
on: {
|
|
295
|
-
'page-change':
|
|
319
|
+
'page-change' (params: any) {
|
|
320
|
+
pageChangeEvent($xeGrid, params)
|
|
321
|
+
}
|
|
296
322
|
},
|
|
297
|
-
scopedSlots:
|
|
323
|
+
scopedSlots: getConfigSlot($xeGrid, pagerOpts.slots)
|
|
298
324
|
})
|
|
299
325
|
: renderEmptyElement($xeGrid)
|
|
300
|
-
]
|
|
301
|
-
)
|
|
326
|
+
])
|
|
302
327
|
}
|
|
303
328
|
return renderEmptyElement($xeGrid)
|
|
304
329
|
}
|
|
305
330
|
|
|
306
|
-
function renderChildLayout (h: CreateElement, $xeGrid: VxeGridConstructor, layoutKeys: VxeGridPropTypes.LayoutKey[]) {
|
|
331
|
+
function renderChildLayout (h: CreateElement, $xeGrid: VxeGridConstructor & VxeGridPrivateMethods, layoutKeys: VxeGridPropTypes.LayoutKey[]) {
|
|
307
332
|
const childVNs: VNode[] = []
|
|
308
333
|
layoutKeys.forEach(key => {
|
|
309
334
|
switch (key) {
|
|
@@ -342,7 +367,7 @@ function renderChildLayout (h: CreateElement, $xeGrid: VxeGridConstructor, layou
|
|
|
342
367
|
return childVNs
|
|
343
368
|
}
|
|
344
369
|
|
|
345
|
-
function renderLayout (h: CreateElement, $xeGrid: VxeGridConstructor) {
|
|
370
|
+
function renderLayout (h: CreateElement, $xeGrid: VxeGridConstructor & VxeGridPrivateMethods) {
|
|
346
371
|
const slots = $xeGrid.$scopedSlots
|
|
347
372
|
|
|
348
373
|
const currLayoutConf = ($xeGrid as any).computeCurrLayoutConf as {
|
|
@@ -1140,18 +1165,6 @@ export default {
|
|
|
1140
1165
|
}
|
|
1141
1166
|
}
|
|
1142
1167
|
},
|
|
1143
|
-
pageChangeEvent (params: any) {
|
|
1144
|
-
const { proxyConfig, tablePage } = this
|
|
1145
|
-
const { currentPage, pageSize } = params
|
|
1146
|
-
tablePage.currentPage = currentPage
|
|
1147
|
-
tablePage.pageSize = pageSize
|
|
1148
|
-
this.$emit('page-change', Object.assign({ $grid: this }, params))
|
|
1149
|
-
if (proxyConfig) {
|
|
1150
|
-
this.commitProxy('query').then((rest: any) => {
|
|
1151
|
-
this.$emit('proxy-query', { ...rest, $grid: this, $event: params.$event })
|
|
1152
|
-
})
|
|
1153
|
-
}
|
|
1154
|
-
},
|
|
1155
1168
|
sortChangeEvent (params: any) {
|
|
1156
1169
|
const { $table, column, sortList } = params
|
|
1157
1170
|
const isRemote = XEUtils.isBoolean(column.remoteSort) ? column.remoteSort : $table.sortOpts.remote
|
|
@@ -61,13 +61,23 @@ export default {
|
|
|
61
61
|
if (filterSlot) {
|
|
62
62
|
return [
|
|
63
63
|
h('div', {
|
|
64
|
-
class: 'vxe-table--filter-template'
|
|
64
|
+
class: 'vxe-table--filter-template',
|
|
65
|
+
style: maxHeight
|
|
66
|
+
? {
|
|
67
|
+
maxHeight: `${maxHeight}px`
|
|
68
|
+
}
|
|
69
|
+
: {}
|
|
65
70
|
}, $xeTable.callSlot(filterSlot, params, h))
|
|
66
71
|
]
|
|
67
72
|
} else if (rtFilter) {
|
|
68
73
|
return [
|
|
69
74
|
h('div', {
|
|
70
|
-
class: 'vxe-table--filter-template'
|
|
75
|
+
class: 'vxe-table--filter-template',
|
|
76
|
+
style: maxHeight
|
|
77
|
+
? {
|
|
78
|
+
maxHeight: `${maxHeight}px`
|
|
79
|
+
}
|
|
80
|
+
: {}
|
|
71
81
|
}, getSlotVNs(rtFilter.call($xeTable, h, filterRender, params)))
|
|
72
82
|
]
|
|
73
83
|
}
|
|
@@ -2,7 +2,7 @@ import XEUtils from 'xe-utils'
|
|
|
2
2
|
import { getRefElem } from '../../src/util'
|
|
3
3
|
import { browse, hasClass, getAbsolutePos, addClass, removeClass } from '../../../ui/src/dom'
|
|
4
4
|
|
|
5
|
-
import type { VxeTableConstructor, VxeTablePrivateMethods } from '../../../../types'
|
|
5
|
+
import type { VxeTableConstructor, VxeTablePrivateMethods, VxeTableDefines, TableReactData, TableInternalData } from '../../../../types'
|
|
6
6
|
|
|
7
7
|
function getTargetOffset (target: any, container: any) {
|
|
8
8
|
let offsetTop = 0
|
|
@@ -159,11 +159,18 @@ export default {
|
|
|
159
159
|
}
|
|
160
160
|
},
|
|
161
161
|
// 处理当前行方向键移动
|
|
162
|
-
moveCurrentRow (isUpArrow:
|
|
163
|
-
const
|
|
162
|
+
moveCurrentRow (isUpArrow: boolean, isDwArrow: boolean, evnt: any) {
|
|
163
|
+
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
164
|
+
const props = $xeTable
|
|
165
|
+
const reactData = $xeTable as unknown as TableReactData
|
|
166
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
167
|
+
|
|
168
|
+
const { treeConfig } = props
|
|
169
|
+
const { currentRow } = reactData
|
|
170
|
+
const { afterFullData } = internalData
|
|
171
|
+
const treeOpts = $xeTable.computeTreeOpts
|
|
164
172
|
const childrenField = treeOpts.children || treeOpts.childrenField
|
|
165
173
|
let targetRow
|
|
166
|
-
evnt.preventDefault()
|
|
167
174
|
if (currentRow) {
|
|
168
175
|
if (treeConfig) {
|
|
169
176
|
const { index, items } = XEUtils.findTree(afterFullData, item => item === currentRow, { children: childrenField })
|
|
@@ -173,7 +180,7 @@ export default {
|
|
|
173
180
|
targetRow = items[index + 1]
|
|
174
181
|
}
|
|
175
182
|
} else {
|
|
176
|
-
const _rowIndex =
|
|
183
|
+
const _rowIndex = $xeTable.getVTRowIndex(currentRow)
|
|
177
184
|
if (isUpArrow && _rowIndex > 0) {
|
|
178
185
|
targetRow = afterFullData[_rowIndex - 1]
|
|
179
186
|
} else if (isDwArrow && _rowIndex < afterFullData.length - 1) {
|
|
@@ -184,9 +191,46 @@ export default {
|
|
|
184
191
|
targetRow = afterFullData[0]
|
|
185
192
|
}
|
|
186
193
|
if (targetRow) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
194
|
+
evnt.preventDefault()
|
|
195
|
+
const params = {
|
|
196
|
+
$table: $xeTable,
|
|
197
|
+
row: targetRow,
|
|
198
|
+
rowIndex: $xeTable.getRowIndex(targetRow),
|
|
199
|
+
$rowIndex: $xeTable.getVMRowIndex(targetRow)
|
|
200
|
+
}
|
|
201
|
+
$xeTable.scrollToRow(targetRow)
|
|
202
|
+
.then(() => $xeTable.triggerCurrentRowEvent(evnt, params))
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
// 处理当前列方向键移动
|
|
206
|
+
moveCurrentColumn (isLeftArrow: boolean, isRightArrow: boolean, evnt: any) {
|
|
207
|
+
const $xeTable = this as VxeTableConstructor & VxeTablePrivateMethods
|
|
208
|
+
const reactData = $xeTable as unknown as TableReactData
|
|
209
|
+
const internalData = $xeTable as unknown as TableInternalData
|
|
210
|
+
|
|
211
|
+
const { currentColumn } = reactData
|
|
212
|
+
const { visibleColumn } = internalData
|
|
213
|
+
let targetCol: VxeTableDefines.ColumnInfo | null = null
|
|
214
|
+
if (currentColumn) {
|
|
215
|
+
const _columnIndex = $xeTable.getVTColumnIndex(currentColumn)
|
|
216
|
+
if (isLeftArrow && _columnIndex > 0) {
|
|
217
|
+
targetCol = visibleColumn[_columnIndex - 1]
|
|
218
|
+
} else if (isRightArrow && _columnIndex < visibleColumn.length - 1) {
|
|
219
|
+
targetCol = visibleColumn[_columnIndex + 1]
|
|
220
|
+
}
|
|
221
|
+
} else {
|
|
222
|
+
targetCol = visibleColumn[0]
|
|
223
|
+
}
|
|
224
|
+
if (targetCol) {
|
|
225
|
+
evnt.preventDefault()
|
|
226
|
+
const params = {
|
|
227
|
+
$table: $xeTable,
|
|
228
|
+
column: targetCol,
|
|
229
|
+
columnIndex: $xeTable.getColumnIndex(targetCol),
|
|
230
|
+
$columnIndex: $xeTable.getVMColumnIndex(targetCol)
|
|
231
|
+
}
|
|
232
|
+
$xeTable.scrollToColumn(targetCol)
|
|
233
|
+
.then(() => $xeTable.triggerCurrentColumnEvent(evnt, params))
|
|
190
234
|
}
|
|
191
235
|
},
|
|
192
236
|
// 处理可编辑方向键移动
|
|
@@ -5168,8 +5168,9 @@ const Methods = {
|
|
|
5168
5168
|
// 如果按下了方向键
|
|
5169
5169
|
if (selected.row && selected.column) {
|
|
5170
5170
|
this.moveSelected(selected.args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt)
|
|
5171
|
-
}
|
|
5172
|
-
|
|
5171
|
+
}
|
|
5172
|
+
// 当前行按键上下移动
|
|
5173
|
+
if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
|
|
5173
5174
|
this.moveCurrentRow(isUpArrow, isDwArrow, evnt)
|
|
5174
5175
|
}
|
|
5175
5176
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|