-
Base primitives:
- state
- computed
- effect
-
Higher level primitives:
- async / resource (non-cached)
- query / mutation (cached)
NOTE:
- the
async
andquery
primitives can be built from the base primitives (but only if the equivalent ofstate
,computed
andeffect
exists!)
signal
computed
effect
async
/resource
(can be made from the base primitives)query
/mutation
(can be made from the base primitives)
useState
useMemo
useEffect
useAsync
/useResource
(can be made from the base primitives)useQuery
/useMutation
(can be made from the base primitives)
atom
atom
atomEffect
(library add-on)atom
/loadable
(supports async atoms)atomWithQuery
(library add-on)
observable
computed
autorun
/reaction
(does not have inner disposal)- X (can probably be made from the base primitives?)
- X (can probably be made from the base primitives?)
state
computed
effectOn
- X (can probably be made from the base primitives?)
- X (can probably be made from the base primitives?)
state
selector
listener
rtk-query
(library add-on)rtk-query
(library add-on)
state
selector
- X (has to be implemented via
subscribe
and middleware) - X (?)
- X (?)