2017-12-31 16 views
1

Warum MobX Mutable Objekte in ihren Dokumenten ermutigen?MobX Mutabilität vs Unveränderlichkeit

Aber sehe ich ein Tutorial über MobX: http://orlandohamsho.com/javascript/mobx-react-tutorial-building-first-application/

Und er verwendet unveränderlichen Ansatz in seinem Tutorial statt wandelbar ein (siehe unten).

@action setUsers = (users) => { this.users = [...users]; (anstatt sie zu drängen)

Ich denke auch, dass immutablity Ansatz besser ist (so dass React.PureComponent arbeiten können, die Optimierung der Leistung bedeutet)

Warum MobX zu ermutigen Objekt zu mutieren? Welchen Ansatz sollte ich verwenden?

Antwort

0

es hängt wirklich davon ab, was Sie tun. MobX verwendet kein unveränderliches Konzept, in der Tat halte ich es nicht für unveränderbare Daten in MobX. Wenn Sie beispielsweise ein Objekt zu einem beobachtbaren Array hinzufügen, wird das gesamte Array erneut gerendert, wenn Sie es unveränderlich machen. Wenn Sie einfach das Objekt in das Array schieben, wird nur das hinzugefügte Objekt gerendert. Es kann Fälle geben, in denen Sie ein neues Array zurückgeben müssen, anstatt es zu mutieren. In den meisten Fällen sollte MobX jedoch keine unveränderlichen Methoden verwenden, um beobachtbare Daten zu aktualisieren.

Verwandte Themen