본문으로 건너뛰기

백그라운드 가져오기 표시기

import { Switch, Match, Show, For } from 'solid-js'

function Todos() {
const todosQuery = useQuery(() => ({
queryKey: ['todos'],
queryFn: fetchTodos,
}))

return (
<Switch>
<Match when={todosQuery.isPending}>
<span>Loading...</span>
</Match>
<Match when={todosQuery.isError}>
<span>Error: {todosQuery.error.message}</span>
</Match>
<Match when={todosQuery.isSuccess}>
<Show when={todosQuery.isFetching}>
<div>Refreshing...</div>
</Show>
<div>
<For each={todosQuery.data}>{(todo) => <Todo todo={todo} />}</For>
</div>
</Match>
</Switch>
)
}
import { useIsFetching } from '@tanstack/solid-query'

function GlobalLoadingIndicator() {
const isFetching = useIsFetching()

return (
<Show when={isFetching()}>
<div>Queries are fetching in the background...</div>
</Show>
)
}