Michel Weststrate, author of the reactive state management library MobX, recently released MobX 6. MobX 6 now supports Internet Explorer and React Native and updates its decorator-based API to reflect the new JavaScript decorators proposal (currently in Stage 2). Important pieces of the MobX ecosystem are also updated to support the latest version of MobX (e.g. mobx-react-litemobx-reactmobx-utils).

MobX 6 removes support for the current implementation of decorators and supports instead the new JavaScript decorators proposal. The new proposal is in the Draft stage (stage 2) of the standardization track managed by the JavaScript TC39 committee. The TC39 committee is responsible for evolving the JavaScript programming language and authoring its specification. Stage 2 proposals are considered experimental. Proposals are moved from Stage 1 to Stage 2 when the committee has reasonable expectations that the proposal will be developed and eventually included in the standard.

The new decorators proposal comes after two previous decorators proposals that did not proceed further in the standardization process. Those two proposals — the legacy (Babel) and experimental (TypeScript) decorators proposals, are incompatible with the Stage 3 class fields proposal.

Weststrate cites adoption as another reason for the change:

Using decorators has always been a serious hurdle in adopting and advocating MobX. […] As one MobX fan puts it:

I am guessing this choice [to drop decorators] was probably a good call. Maybe now without decorators I am hopeful I will be able to convey to people how amazing Mobx is, and at least I won’t hear the decorators excuse anymore. I have never seen an “@” sign scare so many people.

#javascript #reactive programming #web development #javascript libraries #react #development #news

Mobx Reactive State Management Library Released Version 6
1.30 GEEK