Mappatura su record Immutable.js
Sep 17 2020
Come si applicano al meglio funzioni come la mappa quando si dispone di un record?
Questo è il meglio che ho ottenuto finora:
const FooRecord = Record({a: 0, b: 0})
const someRecord = FooRecord({a: 1, b: 2})
const someSeq = someRecord.toSeq().map(x => x + 1)
const someRecordUpdated = FooRecord(someSeq)
Risposte
dube Sep 24 2020 at 15:08
Ai record mancano alcune delle funzioni API della raccolta withMutations, quindi immagino che il tuo approccio sia perfettamente a posto. Immagino che tu l'abbia chiesto perché sembra strano, quindi forse preferisci questo:
Potresti usare mergeWith, che ti consente di definire una funzione di fusione, un solo passaggio nello stesso record della seconda raccolta:
const someRecordUpdated = someRecord.mergeWith(
(originalVal, passedInVal) => originalVal + 1, someRecord);