vbenjs / vue-vben-admin

A modern vue admin panel built with Vue3, Shadcn UI, Vite, TypeScript, and Monorepo. It's fast!
https://www.vben.pro
MIT License
24.82k stars 6.74k forks source link

Bug: vxe-table兼容 #4624

Open EdryZeng opened 6 days ago

EdryZeng commented 6 days ago

Version

Vben Admin V5

Describe the bug?

image const gridOptions: VxeGridProps<RowType> = { border: true, keepSource: true, printConfig: {}, importConfig: {}, exportConfig: {}, columnConfig: { resizable: true, }, pagerConfig: {}, editConfig: { trigger: 'click', mode: 'row', showStatus: true, }, toolbarConfig: { refresh: { icon: 'vxe-icon-refresh', iconLoading: 'vxe-icon-refresh roll', }, import: { icon: 'vxe-icon-cloud-upload', }, export: { icon: 'vxe-icon-cloud-download', }, print: true, zoom: { iconIn: 'vxe-icon-fullscreen', iconOut: 'vxe-icon-minimize', }, custom: { icon: 'vxe-icon-menu', }, }, columns: [ { title: '序号', type: 'seq', width: 50 }, { field: 'name', title: 'Name', sortable: true }, { field: 'age', sortable: true, title: 'Age' }, { field: 'nickname', title: 'Nickname', sortable: true }, { field: 'role', title: 'Role', sortable: true }, { field: 'address', showOverflow: true, title: 'Address', sortable: true }, ], proxyConfig: { ajax: { // 接收 Promise query: async ({ page }, formValues) => { let res = await fetchApi(page.currentPage, page.pageSize); console.log(JSON.stringify(formValues)); return res; }, // body 对象: { removeRecords } delete: ({ body }) => { return delApi(body.removeRecords); }, // body 对象: { insertRecords, updateRecords, removeRecords, pendingRecords } save: ({ body }) => { return saveApi(body.insertRecords); }, }, }, sortConfig: { multiple: true, }, height: '500', };const gridOptions: VxeGridProps<RowType> = { border: true, keepSource: true, printConfig: {}, importConfig: {}, exportConfig: {}, columnConfig: { resizable: true, }, pagerConfig: {}, editConfig: { trigger: 'click', mode: 'row', showStatus: true, }, toolbarConfig: { refresh: { icon: 'vxe-icon-refresh', iconLoading: 'vxe-icon-refresh roll', }, import: { icon: 'vxe-icon-cloud-upload', }, export: { icon: 'vxe-icon-cloud-download', }, print: true, zoom: { iconIn: 'vxe-icon-fullscreen', iconOut: 'vxe-icon-minimize', }, custom: { icon: 'vxe-icon-menu', }, }, columns: [ { title: '序号', type: 'seq', width: 50 }, { field: 'name', title: 'Name', sortable: true }, { field: 'age', sortable: true, title: 'Age' }, { field: 'nickname', title: 'Nickname', sortable: true }, { field: 'role', title: 'Role', sortable: true }, { field: 'address', showOverflow: true, title: 'Address', sortable: true }, ], proxyConfig: { ajax: { // 接收 Promise query: async ({ page }, formValues) => { let res = await fetchApi(page.currentPage, page.pageSize); console.log(JSON.stringify(formValues)); return res; }, // body 对象: { removeRecords } delete: ({ body }) => { return delApi(body.removeRecords); }, // body 对象: { insertRecords, updateRecords, removeRecords, pendingRecords } save: ({ body }) => { return saveApi(body.insertRecords); }, }, }, sortConfig: { multiple: true, }, height: '500', }; 当我使用vxe-table提供的工具栏按钮时,我点击工具栏中的按钮,但凡涉及需要弹窗时。弹窗按钮无法正常弹出,只会挂载在页面下半部分。希望能够正常弹窗

Reproduction

/

System Info

System:
    OS: Windows 11 10.0.22631
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
    Memory: 16.78 GB / 31.66 GB
  Binaries:
    Node: 20.16.0 - D:\Program Files\nodejs\node.EXE
    Yarn: 1.22.22 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 10.8.1 - D:\Program Files\nodejs\npm.CMD
    pnpm: 9.9.0 - ~\AppData\Roaming\npm\pnpm.CMD
  Browsers:
    Edge: Chromium (127.0.2651.74)
    Internet Explorer: 11.0.22621.3527

Relevant log output

No response

Validations

linyouhang commented 6 days ago

image image 可以正常弹出

EdryZeng commented 6 days ago

图像 图像可以正常弹出

啊这,我用示例项目中加也没用,web-ele加了也是挂载在页面下班部分,是需要设置什么东西吗

EdryZeng commented 6 days ago

图像 图像可以正常弹出

而且我用演示项目里的,除了列设置按钮有用,其他按钮点击都没反应

cbombonera commented 5 days ago

想问下 怎么兼容 ep 就是不想用 vxe 工具栏 内置的modal

anncwb commented 5 days ago

目前只支持表格功能,其余右侧工具不支持,后续在支持。

yike510 commented 2 days ago

image image 可以正常弹出

你好,请问功能可以实现吗?打印和导出