import { useEffect, useState } from "react"; import { useEntity, useEntityMutate, useEntityQuery } from "ui/client/api/use-entity"; import { Scrollable } from "ui/layouts/AppShell/AppShell"; export default function SwrAndDataApi() { return ( asdf ); } function QueryMutateDataApi() { const { mutate } = useEntityMutate("comments"); const { data, ...r } = useEntityQuery("comments", undefined, { limit: 2, }); return (
bla
{JSON.stringify(r.key)}
{r.error &&
failed to load
} {r.isLoading &&
loading...
} {data &&
{JSON.stringify(data, null, 2)}
} {data && (
{data.map((comment) => ( { await mutate(comment.id, { content: e.target.value }); }} className="border border-black" /> ))}
)}
); } function QueryDataApi() { const { data, update, ...r } = useEntityQuery("comments", undefined, { sort: { by: "id", dir: "asc" }, limit: 3, }); return (
{JSON.stringify(r.key)}
{r.error &&
failed to load
} {r.isLoading &&
loading...
} {data &&
{JSON.stringify(data, null, 2)}
}
); } function DirectDataApi() { const [data, setData] = useState(); const { create, read, update, _delete } = useEntity("comments"); useEffect(() => { read().then((data) => setData(data)); }, []); return
{JSON.stringify(data, null, 2)}
; }