Skip to content

Latest commit

 

History

History
60 lines (38 loc) · 1.88 KB

comparison.md

File metadata and controls

60 lines (38 loc) · 1.88 KB
id title sidebar_label
comparison
Comparison with other projects
Comparison

There are several projects to provide global state management. Let's compare with other projects.

Notes about similarities and differences

Here describes similarities and differences.

Pure React

As we saw in Quick Start, the way we use React Tracked's createContainer is pretty much the same as pure React with context and hooks.

The difference is our effortless render optimization with useTracked.

React Redux

React Redux provides useSelector and it can be used to improve performance.

React Tracked can add automatic optimization with Proxies in two ways.

  1. createTrackedSelector to create a hook for React Redux with state usage tracking
  2. useSelectorWithTracking hook for selector with usage tracking

Reactive React Redux

Reactive React Redux originally proposed useTrackedState hook in advance of React Tracked.

It also uses bleeding edge techniques to experiment for React Redux ecosystem.

MobX React

MobX utilizes Proxies, so the technique in the implementation is similar. The easiness of the usage is similar too.

However, MobX is based on mutable states. Whereas React Tracked is based on immutable states like Pure React and React Redux.

Vue.js

Vue has nothing to do with React, but it utilizes Proxies. The spirit of the effortless render optimization can be similar to the easiness of Vue.

Benchmarks

We have done some benchmark tests.

benchmark result

See this for details.