Zur Zeit rende ich Material-UI <Table>'s
<TableRow>
(http://www.material-ui.com/#/components/table) mit einem Array von <TableRow>s
und .map()
. Jede <TableRow>
hat eine <TableRowColumn>
, die einen Vornamen darstellt, so wie <TableRowColumn>Josh</TableRowColumn>
.ReactJS mit Material-UI: Wie sortiere ich ein Array von Material-UIs <TableRow> alphabetisch?
Aber, wenn ein Benutzer eine Taste drückt, möchte ich das <TableRow>
Array alphabetisch nach dem ersten Namen <TableRowColumn>'s
sortieren. Sagen wir zum Beispiel von 10 <TableRow>s
, wenn das Array [0] einen Vornamen Conny und Array [1] Adrian hätte, würde das Array [1] Array [0] werden.
Was wäre der richtige Ansatz dazu? Jede Führung oder Einsicht würde es sehr schätzen.
EDIT
Jede Reihe würde mit dem Array rows
wie so wiedergegeben werden, die Objekte mit Eigenschaften firstName
und favColor
hat:
{
rows.map((row) => {
return(
<UserRow
firstName={row.firstName}
favColor={row.favColor}
/>
)
})
}
und jede Reihe ist wie so festgelegt:
const UserRow = (props) => {
const {firstName, favColor} = props
return (
<TableRow>
<TableRowColumn>{firstName}</TableRowColumn>
<TableRowColumn>{favColor}</TableRowColumn>
</TableRow>
)
}
Haben Sie etwas dagegen zu erklären, was 'a.firstname> b.firstname -1: 1 'tut, und wie würde ich es für verschiedene Anzahl von Zeilen zu machen? –
Ich habe meine Antwort bearbeitet. Dies ist nur die Vergleichsfunktion, mit der ich mein Array von Tabellendaten sortiere. Um dies auf verschiedene Anzahl von Raws zu erweitern, müssten Sie etwas anderes als einen booleschen Wert verwenden, um zu definieren, nach welcher Spalte sortiert werden soll. –
Ich habe mein Beispiel aktualisiert, um eine Auswahl anstelle einer Optionsschaltfläche zu verwenden. Ich hoffe, es hilft. –