voby-query
v0.3.1
Published
From scratch implementation of React Query for Voby.
Downloads
81
Readme
Voby Query
From scratch implementation of React Query for Voby.
As of now only has these hooks:
useQuery
useMutation
useMutationState
useQueryClient
queryOptions
createQueryClient
(React Query'sQueryClient
)
Differences from React Query
useQuery
and useMutation
return a read-only observable. This mean you can not destructure it.
useQuery
's queryKey
and useMutation
s mutationKey
options allow an observable, an array of observables, or a function that return those. They treated as dependencies of the query. That is why useQuery
is return a read-only observable.
Use createQueryClient
to create a QueryClient
instance. This is the same as React Query's QueryClient
. Most of the options are the same, but there are some differences. For example options like throwOnError
, refetchOnMount
, refetchOnWindowFocus
and many more are don't allow a function as value.
The codebase is in a very rough state for my taste. Types need a bit more work. Most of the code in useMutation
hook generated by AI. In general whole library need some clean up and tests. Most of the features are hand tested on one my projects. No playground available yet.
Installation
npm i voby-query
Usage
import { useQuery } from "voby-query"
const id = $(1)
const query = useQuery({
queryKey: ["todos", id],
queryFn: async () => {
const response = await fetch(`https://jsonplaceholder.typicode.com/todos/${id()}`)
return response.json()
},
})
To learn more about usage visit React Query's documentation.
License
MIT