0
votes

Comment réorganiser tous les éléments de matrice à un index spécifique dans React?

Mes utilisateurs sont en mesure de réorganiser une liste de catégories et je dois persister les index des articles de réseau afin que la commande reste alors que l'utilisateur ferme l'application.

J'ai essayé cela, mais cela ne fonctionne pas parce que le Les données changent lors de la cartographie. Je ne peux tout simplement pas obtenir la logique dans ma tête, comment y parvenir.

ci-dessous est d'exemple de données et la logique que j'ai tentée: xxx < p> ci-dessous est la matrice de données résultante: xxx

mais je veux que ce soit: xxx

Qu'est-ce que je fais faux ici?


0 commentaires

3 Réponses :


0
votes

Il peut être plus facile de stocker l'index dans le même objet de données de sorte que vous puissiez utiliser .sort xxx

puis trier Comme ceci: xxx


0 commentaires

0
votes

Vous pouvez utiliser .sort () code> fonction et réussir le comparateur en tant que paramètre.

orderCategories = (data, order) => {
  return data.sort((item1, item2) => {
     const index1 = order.find(orderItem => orderItem.id === item1.id).index;
     const index2 = order.find(orderItem => orderItem.id === item2.id).index;

    return index1 - index2;
  });
};


0 commentaires

1
votes

Vous pouvez faire quelque chose comme ceci:

orderCategories = (data, order) => {
order.forEach(order => {
    result[order.index] = data.find(data => data.id === order.id)
  }
return result;
)}


0 commentaires