A note on observability
When you use the observable() API, MobX will apply deep observability to the observable instance. This means it will track changes happening to the observable object, array, or map and do it for every property, at every level. In the cases of arrays and maps, it will also track the additions and removals of entries. Any new entry in an array or a map is also made into a deep observable. This is definitely a great sensible default and works well for most situations. However, there will be cases where you may not want this default.
You can change this behavior at the time of creating the observable. Instead of using observable(), you can use the sibling APIs (observable.object(), observable.array(), observable.map() ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access