From 65085333fa2d624c81731e0bbbdfbc39f2610794 Mon Sep 17 00:00:00 2001 From: GweesinChan Date: Mon, 3 Mar 2025 15:08:57 +0800 Subject: [PATCH 1/2] feat(grid): expose getTreeExpandeds function --- examples/sites/demos/apis/grid.js | 14 ++ ...table-tree-grid-expand-composition-api.vue | 149 +++++++++++++++++ .../tree-table-tree-grid-expand.spec.js | 9 + .../tree-table-tree-grid-expand.vue | 158 ++++++++++++++++++ .../pc/app/grid/webdoc/grid-tree-table.js | 11 ++ packages/vue/src/grid/src/tree/src/methods.ts | 3 + 6 files changed, 344 insertions(+) create mode 100644 examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand-composition-api.vue create mode 100644 examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.spec.js create mode 100644 examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.vue diff --git a/examples/sites/demos/apis/grid.js b/examples/sites/demos/apis/grid.js index f766a10166..ac6346d405 100644 --- a/examples/sites/demos/apis/grid.js +++ b/examples/sites/demos/apis/grid.js @@ -1692,6 +1692,20 @@ export default { mode: ['pc', 'mobile-first'], pcDemo: 'grid-tree-table#tree-table-tree-grid-insert-delete-update' }, + { + name: 'getTreeExpandeds', + type: '() => IRow[]', + defaultValue: '', + meta: { + stable: '3.22.0' + }, + desc: { + 'zh-CN': '获取展开的行数据', + 'en-US': 'Get the expanded row data' + }, + mode: ['pc', 'mobile-first'], + pcDemo: 'grid-tree-table#tree-table-tree-grid-expand' + }, { name: 'closeFilter', type: '() => void', diff --git a/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand-composition-api.vue b/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand-composition-api.vue new file mode 100644 index 0000000000..210fce183e --- /dev/null +++ b/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand-composition-api.vue @@ -0,0 +1,149 @@ + + + diff --git a/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.spec.js b/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.spec.js new file mode 100644 index 0000000000..e7b05b34f4 --- /dev/null +++ b/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.spec.js @@ -0,0 +1,9 @@ +import { test, expect } from '@playwright/test' + +test('检查树节点展开行数', async ({ page }) => { + page.on('pageerror', (exception) => expect(exception).toBeNull()) + await page.goto('grid-tree-table#tree-table-tree-grid-expand') + await page.getByRole('cell', { name: '1' }).getByRole('img').click() + + await expect(page.getByText('展开行数:1')).toBeVisible() +}) diff --git a/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.vue b/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.vue new file mode 100644 index 0000000000..11b94d1be7 --- /dev/null +++ b/examples/sites/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.vue @@ -0,0 +1,158 @@ + + + diff --git a/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js b/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js index 2835bdcdc7..9228bfa342 100644 --- a/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js +++ b/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js @@ -96,6 +96,17 @@ export default { }, 'codeFiles': ['tree-table/has-tree-expand.vue'] }, + { + 'demoId': 'tree-table-tree-grid-expand', + 'name': { 'zh-CN': '获取展开的行数据', 'en-US': 'Get the expanded row data' }, + 'desc': { + 'zh-CN': + '

通过 getTreeExpandeds 方法可以获取展开的行数据,参数 row 为行数据对象。

\n', + 'en-US': + '

You can use the getTreeExpandeds method to get the expanded row data. The row parameter indicates the row data object.

\n' + }, + 'codeFiles': ['tree-table/tree-table-tree-grid-expand.vue'] + }, { 'demoId': 'tree-table-tree-grid-index', 'name': { 'zh-CN': '树表展开序号列配置', 'en-US': 'Expand Row No. Column Configuration' }, diff --git a/packages/vue/src/grid/src/tree/src/methods.ts b/packages/vue/src/grid/src/tree/src/methods.ts index 6c3b581a5a..d6f1825257 100644 --- a/packages/vue/src/grid/src/tree/src/methods.ts +++ b/packages/vue/src/grid/src/tree/src/methods.ts @@ -122,5 +122,8 @@ export default { this.treeExpandeds = [] setTreeScrollYCache(this) return this.$nextTick().then(() => (hasExpand ? this.recalculate() : 0)) + }, + getTreeExpandeds() { + return this.treeExpandeds } } From cea7f231df9251a7761cb16f73c74c1dd77a3b50 Mon Sep 17 00:00:00 2001 From: GweesinChan Date: Mon, 3 Mar 2025 20:03:21 +0800 Subject: [PATCH 2/2] docs: fix description error --- examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js b/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js index 9228bfa342..84f92a3efb 100644 --- a/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js +++ b/examples/sites/demos/pc/app/grid/webdoc/grid-tree-table.js @@ -100,10 +100,8 @@ export default { 'demoId': 'tree-table-tree-grid-expand', 'name': { 'zh-CN': '获取展开的行数据', 'en-US': 'Get the expanded row data' }, 'desc': { - 'zh-CN': - '

通过 getTreeExpandeds 方法可以获取展开的行数据,参数 row 为行数据对象。

\n', - 'en-US': - '

You can use the getTreeExpandeds method to get the expanded row data. The row parameter indicates the row data object.

\n' + 'zh-CN': '

通过 getTreeExpandeds 方法可以获取展开的行数据

', + 'en-US': '

You can use the getTreeExpandeds method to get the expanded row data

' }, 'codeFiles': ['tree-table/tree-table-tree-grid-expand.vue'] },