J'essaie de fusionner un tableau immuable d'objets en utilisant Reacts Immutability helpers ou Immutable js qui jamais. J'essaye de créer une liste d'enregistrements seulement où les noms ont changé. J'essaie d'éviter de créer des doublons dans la liste si le nom a été changé plusieurs fois avant la soumission, ce qui m'a amené à croire qu'une fusion était le chemin que je devais prendre. Un exemple de ce que j'essaie de réaliser est ci-dessous.Réagir fusionner tableau immuable d'objets en utilisant React Immutability helpers ou Immutable js
var objArray = [{id:4, name:'bar'}, {id:10, name:'test'}];
var newObj = {id:4, name:'foo'};
var updatedEntries = update(this.state.nameChanges, {$merge: {newObj});
Le résultat que je cherche est:
objArray = [{id:4, name:'foo'}, {id:10, name:'test'}]
Le résultat me semble être obtenir est:
objArray = [{id:4, name:'foo'}]
J'ai essayé d'utiliser Facebook React aides immutabilité, mais ne peut pas sembler obtenir le résultat dont j'ai besoin. Je semble avoir un peu de mal à essayer de comprendre ce que fait la fonction de fusion. Toute aide est appréciée.
Merci
Je ne suis pas sûr de ce que vous êtes 'update' fait, mais' merge' [fonctionne pour moi] (http://codepen.io/tyrsius/pen/mVyQxL ? editors = 001) – Tyrsius
@Tyrsius Ce n'est pas ImmutableJS - ce sont les variantes intégrées avec lesquelles React est livré. –
Oh, dans ce cas, je viens de vous montrer comment le faire avec ImmutableJS. Est-ce que ça marche? – Tyrsius