Beste Weg, um entfernen Sie ein element aus einer Liste innerhalb der Karte in Immutable.js

Ich bin mit Facebook ist Immutable.js, um die Geschwindigkeit meiner Anwendung Reagieren, um die Vorteile der PureRender mixin. Einer meiner Daten-Strukturen ist ein Map() und einer der Schlüssel, diese Karte hat einen List<Map>() als Wert. Was ich Frage ist, nicht zu wissen, der index des Elements, die ich entfernen wollen, aus der List(), was ist der beste Weg, es zu entfernen? So weit ich gekommen bin mit der unten. Ist dies der beste (effizienteste) Weg?

//this.graphs is a Map() which contains a List<Map>() under the key "metrics"
onRemoveMetric: function(graphId, metricUUID) {
    var index = this.graphs.getIn([graphId, "metrics"]).findIndex(function(metric) {
        return metric.get("uuid") === metricUUID;
    });
    this.graphs = this.graphs.deleteIn([graphdId, "metrics", index]);
}

(Ich habe überlegt die List<Map>() zu einem Map() sich, da jedes element in der Liste hat eine UUID, allerdings bin ich nicht an diesem Punkt noch nicht.)

Schreibe einen Kommentar