Skip to content

sortingFn: 'alphanumeric' returns numbers last #5500

Open

Description

@jessewriter

TanStack Table version

8.14.0

Framework/Library version

React 18.2

Describe the bug and the steps to reproduce it

expected behavior is for sorting to put symbols, numbers, followed by letters.

what i see is letters first with numbers last

example.

Amy
Frank
1dude

Your Minimal, Reproducible Example - (Sandbox Highly Recommended)

propriatary code sorry

Screenshots or Videos (Optional)

column def
{
id: stationCode,
accessorFn: (row) => ${row.x}::${row.y}
sortingFn: 'alphanumeric',
}

default sorting def
defaultSorting={[{ id: 'stationCode', desc: false }]}

Do you intend to try to help solve this bug with your own PR?

Maybe, I'll investigate and start debugging

how i solved : sortingFn: (rowA, rowB, columnId) => {
console.log('rowA', rowA.getValue('stationCode'))
return rowA
.getValue('stationCode')
.localeCompare(rowB.getValue('stationCode'), 'en', { numeric: true })
},

Terms & Code of Conduct

  • I agree to follow this project's Code of Conduct
  • I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.

Activity

  1. jessewriter commented on Apr 19, 2024

    @jessewriter
    Author

    interesting when i click the sorting from the header and disable sorting on this column it sorts correctly :/ , that may be because our data is pre-sorted correctly

  2. k00k commented on Sep 14, 2024

    @k00k

    👍 I also found this behavior strange. Ideally there would be another sort option to allow sorting numbers before letters. I think most people would expect that to be the way it works by default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions