From 7aa85c83c670ad2fc3a703bd3b2b1813b36d8689 Mon Sep 17 00:00:00 2001 From: Jordan Christiansen Date: Mon, 17 Apr 2023 10:02:47 -0500 Subject: [PATCH 1/3] fix: do not render collapsed row --- src/Body/ExpandedRow.tsx | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/Body/ExpandedRow.tsx b/src/Body/ExpandedRow.tsx index daa1fc15b..2da542065 100644 --- a/src/Body/ExpandedRow.tsx +++ b/src/Body/ExpandedRow.tsx @@ -56,13 +56,12 @@ function ExpandedRow(props: ExpandedRowProps) { ); } + if (!expanded) { + return null; + } + return ( - + {contentNode} From dabdd145a30be7555a7a9ba74a5e639c098dad3d Mon Sep 17 00:00:00 2001 From: Jordan Christiansen Date: Mon, 17 Apr 2023 11:20:26 -0500 Subject: [PATCH 2/3] changed tests to work with new rendering logic --- tests/ExpandRow.spec.js | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/tests/ExpandRow.spec.js b/tests/ExpandRow.spec.js index 7dbb9593d..c30c95501 100644 --- a/tests/ExpandRow.spec.js +++ b/tests/ExpandRow.spec.js @@ -1,8 +1,8 @@ -import React from 'react'; import { mount } from 'enzyme'; -import { act } from 'react-dom/test-utils'; -import { resetWarned } from 'rc-util/lib/warning'; import { spyElementPrototype } from 'rc-util/lib/test/domHook'; +import { resetWarned } from 'rc-util/lib/warning'; +import React from 'react'; +import { act } from 'react-dom/test-utils'; import Table from '../src'; describe('Table.Expand', () => { @@ -393,10 +393,8 @@ describe('Table.Expand', () => { expect(wrapper.find('tbody tr').at(1).hasClass('rc-table-expanded-row')).toBeTruthy(); wrapper.setProps({ expandedRowKeys: [1] }); - expect(wrapper.find('tbody tr')).toHaveLength(4); - expect(wrapper.find('tbody tr').at(1).hasClass('rc-table-expanded-row')).toBeTruthy(); - expect(wrapper.find('tbody tr').at(1).props().style.display).toEqual('none'); - expect(wrapper.find('tbody tr').at(3).hasClass('rc-table-expanded-row')).toBeTruthy(); + expect(wrapper.find('tbody tr')).toHaveLength(3); + expect(wrapper.find('tbody tr').at(2).hasClass('rc-table-expanded-row')).toBeTruthy(); }); it('renders expend row class correctly', () => { @@ -532,7 +530,7 @@ describe('Table.Expand', () => { // https://github.com/ant-design/ant-design/issues/23894 it('should be collapsible when use `expandIcon` & `expandRowByClick`', () => { - const data = [{ key: 0, name: 'Lucy', age: 27 }]; + const data = [{ key: 0, name: 'Lucy', age: 27 }, null]; const onExpand = jest.fn(); const wrapper = mount( createTable({ @@ -551,11 +549,11 @@ describe('Table.Expand', () => { wrapper.find('.custom-expand-icon').first().simulate('click'); expect(onExpand).toHaveBeenCalledWith(true, data[0]); expect(onExpand).toHaveBeenCalledTimes(1); - expect(wrapper.find('.rc-table-expanded-row').first().getDOMNode().style.display).toBe(''); + expect(wrapper.find('.rc-table-expanded-row').length).toBe(2); wrapper.find('.custom-expand-icon').first().simulate('click'); expect(onExpand).toHaveBeenCalledWith(false, data[0]); expect(onExpand).toHaveBeenCalledTimes(2); - expect(wrapper.find('.rc-table-expanded-row').first().getDOMNode().style.display).toBe('none'); + expect(wrapper.find('.rc-table-expanded-row').length).toBe(1); }); // https://github.com/ant-design/ant-design/issues/23894 From 722d6b52c133dbeaee686369e88aebd12880f425 Mon Sep 17 00:00:00 2001 From: Jordan Christiansen Date: Mon, 17 Apr 2023 11:21:59 -0500 Subject: [PATCH 3/3] removed test null value --- tests/ExpandRow.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/ExpandRow.spec.js b/tests/ExpandRow.spec.js index c30c95501..33cb31252 100644 --- a/tests/ExpandRow.spec.js +++ b/tests/ExpandRow.spec.js @@ -530,7 +530,7 @@ describe('Table.Expand', () => { // https://github.com/ant-design/ant-design/issues/23894 it('should be collapsible when use `expandIcon` & `expandRowByClick`', () => { - const data = [{ key: 0, name: 'Lucy', age: 27 }, null]; + const data = [{ key: 0, name: 'Lucy', age: 27 }]; const onExpand = jest.fn(); const wrapper = mount( createTable({