Zuordnung über Immutable.js-Datensätze

Sep 17 2020

Wie wenden Sie Funktionen wie Map am besten an, wenn Sie einen Datensatz haben?

Das ist das Beste, was ich bisher habe:

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)

Antworten

dube Sep 24 2020 at 15:08

In den Datensätzen fehlen einige der API-Funktionen der Sammlung withMutations, daher denke ich, dass Ihr Ansatz vollkommen in Ordnung ist. Ich denke, Sie haben gefragt, weil es komisch aussieht. Vielleicht bevorzugen Sie dieses:

Sie können mergeWith, mit dem Sie eine Fusionsfunktion definieren, einen Just-Pass im selben Datensatz wie die zweite Sammlung verwenden:

const someRecordUpdated = someRecord.mergeWith(
    (originalVal, passedInVal) => originalVal + 1, someRecord);