Je dois mettre à jour tous les éléments d'une liste immuable Javascript, en utilisant la bibliothèque immutable.js, sans conditions IF
. Maintenant, je le fais en utilisant une liste auxiliaire, comme le code suivant:Existe-t-il une manière élégante de mettre à jour plusieurs éléments dans une liste immutable en utilisant immutable.js?
const secondList = [];
firstList.map((item, i) => {
item.position = i;
secondList.push(item);
});
firstList = Immutable.List(secondList);
Puis-je optimiser ce code à l'aide d'une fonction spécifique Immuable?
Pourquoi ne devrais-je pas modifier ma liste immutable? Dans ce cas, je suis en train de faire une opération et de retourner une nouvelle liste, donc la liste d'origine n'est pas modifiée, en gardant le concept d'objets immuables, ai-je tort? J'ai pensé que peut-être la bibliothèque a un moyen de le faire sans boucles. – rafakx
La citation provient directement de la documentation de immutable.js. Vous ne pouvez pas le modifier directement, mais vous pouvez modifier sa référence, comme vous l'avez fait dans votre code. Vous êtes en effet retourner une nouvelle liste, et remplacer l'ancienne liste avec elle. C'est exactement la même chose que de modifier votre immutable directement ... – Salketer