问题描述
我正在尝试对react-table v7
中的所有列进行默认排序,并且仅显示升序和降序,我尝试了以下操作
useTable(
{
columns,data,initialState: {
sortBy: [
columns.map((one) => {
return {
id: one.accessor ? one.accessor : one.id,desc: true,};
}),],)
默认情况下,这确实会改变表格的顺序,但是排序图标不会出现在我这样写的列上
{column.isSorted ? (
column.isSortedDesc ? (
<ExpandLessIcon
fontSize="large"
style={{
transition: "250ms transform",marginLeft: "7px",fontSize: "20px",}}
color="disabled"
></ExpandLessIcon>
) : (
<ExpandMoreIcon
fontSize="large"
style={{
transition: "250ms transform",}}
color="disabled"
></ExpandMoreIcon>
)
) : (
""
)}
我控制台日志时,和column.isSorted
仍然是false
。
有人可以帮我解决这个问题吗?
解决方法
Array.map returns
是一个新数组,它使sortBy
数组具有另一个数组,这引起了问题。可行
sortBy: columns.map((one) => {
return {
desc: false,id: one.accessor ? one.accessor : "",};
}),