在React中添加排序图标可以通过使用第三方库或自定义组件来实现。以下是一种常见的实现方式:
import React, { useState } from 'react';
const SortIcon = ({ direction }) => {
return (
<span>
{direction === 'asc' && <i className="fa fa-sort-asc" />}
{direction === 'desc' && <i className="fa fa-sort-desc" />}
</span>
);
};
const Table = () => {
const [sortDirection, setSortDirection] = useState('asc');
const handleSort = () => {
// 处理排序逻辑,更新sortDirection
setSortDirection(sortDirection === 'asc' ? 'desc' : 'asc');
};
return (
<table>
<thead>
<tr>
<th>列名</th>
<th onClick={handleSort}>
排序 <SortIcon direction={sortDirection} />
</th>
</tr>
</thead>
<tbody>
{/* 表格内容 */}
</tbody>
</table>
);
};
export default Table;
在上述示例中,SortIcon组件根据传入的排序方向参数('asc'或'desc')渲染相应的排序图标。Table组件使用useState来管理排序方向的状态,并在点击排序列时更新状态。通过在<th>元素中使用SortIcon组件,可以实现在React中添加排序图标。
请注意,上述示例中使用的图标类名("fa fa-sort-asc"和"fa fa-sort-desc")是Font Awesome图标库的类名,你需要在项目中引入Font Awesome并正确配置。
领取专属 10元无门槛券
手把手带您无忧上云