Ant-design 中的 React 和 ExpandedRow Render
React and ExpandedRow Render in Ant-design
我正在使用 Ant Design table,其中我正在使用行扩展功能。我的查询是当我单击 table 的任何一行时,该行正在打开,但问题是当我单击其他行时,前一行仍然打开,我只想要这样的功能,如果我单击任何行,另一行已经打开应该关闭.....如果有人有解决方案,请在 stackBlitz 中向我展示演示.....提前致谢
查看 antd 文档 AntD/#expandable。
很简单。 AntD tables 有参数 expandable
接受许多变量,例如 expandedRowKeys
保存 的行已经扩展,onExpand
是一个被调用的方法当您单击该图标将其展开时。一种简单的方法是创建自己的变量来保存像这样扩展的密钥
const [expandedKey, setExpandedKey] = useState(null);
并创建一个新方法,用于在行展开时如此
const onExpand = (_, { key }) => setExpandedKey(key);
然后在渲染 AntD 时 table 传递这些变量
<Table
columns={columns}
expandable={{
expandedRowRender: (record) => (
<p style={{ margin: 0 }}>{record.description}</p>
),
onExpand: onExpand,
expandedRowKeys: [expandedKey]
}}
dataSource={data}
/>
实例:https://codesandbox.io/s/eloquent-http-jxf1m?file=/src/App.js
编辑
要使其在每次单击 _
图标(打开时)时关闭,请将 onExpand
方法更改为:
const onExpand = (_, { key }) =>
expandedKey === key ? setExpandedKey(null) : setExpandedKey(key);
我正在使用 Ant Design table,其中我正在使用行扩展功能。我的查询是当我单击 table 的任何一行时,该行正在打开,但问题是当我单击其他行时,前一行仍然打开,我只想要这样的功能,如果我单击任何行,另一行已经打开应该关闭.....如果有人有解决方案,请在 stackBlitz 中向我展示演示.....提前致谢
查看 antd 文档 AntD/#expandable。
很简单。 AntD tables 有参数 expandable
接受许多变量,例如 expandedRowKeys
保存 的行已经扩展,onExpand
是一个被调用的方法当您单击该图标将其展开时。一种简单的方法是创建自己的变量来保存像这样扩展的密钥
const [expandedKey, setExpandedKey] = useState(null);
并创建一个新方法,用于在行展开时如此
const onExpand = (_, { key }) => setExpandedKey(key);
然后在渲染 AntD 时 table 传递这些变量
<Table
columns={columns}
expandable={{
expandedRowRender: (record) => (
<p style={{ margin: 0 }}>{record.description}</p>
),
onExpand: onExpand,
expandedRowKeys: [expandedKey]
}}
dataSource={data}
/>
实例:https://codesandbox.io/s/eloquent-http-jxf1m?file=/src/App.js
编辑
要使其在每次单击 _
图标(打开时)时关闭,请将 onExpand
方法更改为:
const onExpand = (_, { key }) =>
expandedKey === key ? setExpandedKey(null) : setExpandedKey(key);