Skip to content

Commit e8bb86c

Browse files
authored
Merge pull request #17 from ssi02014/fix/docs
docs: useQueryErrorResetBoundary ์˜คํƒ€ ์ œ๊ฑฐ ๋ฐ @suspensive/react-query ํƒ€์ดํ‹€ ์ถ”๊ฐ€
2 parents a501017 + 245ca9b commit e8bb86c

1 file changed

Lines changed: 32 additions & 28 deletions

File tree

โ€ŽREADME.mdโ€Ž

Lines changed: 32 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -743,20 +743,20 @@ const queryClient = useQueryClient();
743743
- initialData ์˜ต์…˜์„ ํ†ตํ•ด์„œ ์ฟผ๋ฆฌ๋ฅผ ๋ฏธ๋ฆฌ ์ฑ„์šฐ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ดˆ๊ธฐ ๋กœ๋“œ ์ƒํƒœ๋„ ๊ฑด๋„ˆ๋›ธ ์ˆ˜๋„ ์žˆ๋‹ค.
744744
745745
```tsx
746-
const useSuperHeroData = (heroId: string) => {
747-
const queryClient = useQueryClient();
748-
return useQuery(['super-hero', heroId], fetchSuperHero, {
749-
initialData: () => {
750-
const queryData = queryClient.getQueryData(['super-heroes']) as any;
751-
const hero = queryData?.data?.find(
752-
(hero: Hero) => hero.id === parseInt(heroId)
753-
);
754-
755-
if (hero) return { data: hero };
756-
return undefined;
757-
},
758-
});
759-
};
746+
const useSuperHeroData = (heroId: string) => {
747+
const queryClient = useQueryClient();
748+
return useQuery(["super-hero", heroId], fetchSuperHero, {
749+
initialData: () => {
750+
const queryData = queryClient.getQueryData(["super-heroes"]) as any;
751+
const hero = queryData?.data?.find(
752+
(hero: Hero) => hero.id === parseInt(heroId)
753+
);
754+
755+
if (hero) return { data: hero };
756+
return undefined;
757+
},
758+
});
759+
};
760760
```
761761
762762
<br />
@@ -1178,7 +1178,7 @@ interface Props {
11781178
children: React.ReactNode;
11791179
}
11801180

1181-
const QueryErrorBoundary = ({ children, fallback }: Props) => {
1181+
const QueryErrorBoundary = ({ children }: Props) => {
11821182
const { reset } = useQueryErrorResetBoundary(); // (*)
11831183

11841184
return (
@@ -1228,7 +1228,7 @@ function App() {
12281228
12291229
[๋ชฉ์ฐจ ์ด๋™](#์ฃผ์š”-์ปจ์…‰-๋ฐ-๊ฐ€์ด๋“œ-๋ชฉ์ฐจ)
12301230
1231-
- ErrorBoundary๋Š” ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ๋ณด์—ฌ์ฃผ๋Š” Fallback UI๋ฅผ `์„ ์–ธ์ `์œผ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ๋ฆฌ์•กํŠธ ์ฟผ๋ฆฌ๋Š” Suspense์™€๋„ ๊ฒฐํ•ฉํ•ด์„œ `์„œ๋ฒ„ ํ†ต์‹  ์ƒํƒœ๊ฐ€ ๋กœ๋”ฉ์ค‘`์ผ ๋•Œ Fallback UI๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๊ฒŒ ์„ ์–ธ์ ์œผ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
1231+
- ErrorBoundary๋Š” ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ๋ณด์—ฌ์ฃผ๋Š” Fallback UI๋ฅผ `์„ ์–ธ์ `์œผ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ๋ฆฌ์•กํŠธ ์ฟผ๋ฆฌ๋Š” `Suspense`์™€๋„ ๊ฒฐํ•ฉํ•ด์„œ `์„œ๋ฒ„ ํ†ต์‹  ์ƒํƒœ๊ฐ€ ๋กœ๋”ฉ์ค‘`์ผ ๋•Œ Fallback UI๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๊ฒŒ ์„ ์–ธ์ ์œผ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
12321232
- ์ฐธ๊ณ ๋กœ, Suspense ์ปดํฌ๋„ŒํŠธ๋Š” ๋ฆฌ์•กํŠธ v16๋ถ€ํ„ฐ ์ œ๊ณต๋˜๋Š” `Component Lazy Loading`์ด๋‚˜ `Data Fetching` ๋“ฑ์˜ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ํ•  ๋•Œ, ์‘๋‹ต์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋™์•ˆ Fallback UI(ex: Loader)๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ๋‹ค.
12331233
12341234
```tsx
@@ -1252,7 +1252,7 @@ function App() {
12521252
}
12531253
```
12541254
1255-
- ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ์šฐ๋ฆฌ๋Š” ์„œ๋ฒ„ ์ƒํƒœ๊ฐ€ ๋กœ๋”ฉ์ผ๋–„ Loader ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ณด์—ฌ์ฃผ๊ฒ ๋‹ค!๋ผ๊ณ  ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค.
1255+
- ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ์šฐ๋ฆฌ๋Š” ์„œ๋ฒ„ ์ƒํƒœ๊ฐ€ ๋กœ๋”ฉ์ผ ๋•Œ Loader ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ณด์—ฌ์ฃผ๊ฒ ๋‹ค!๋ผ๊ณ  ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค.
12561256
- Suspense์ปดํฌ๋„ŒํŠธ ๋‚ด๋ถ€์—์„œ ์–ด๋–ค ๋กœ์ง์ด ๋™์ž‘ํ•˜๋Š”์ง€ ์šฐ๋ฆฌ๋Š” ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š์•„๋„๋œ๋‹ค. ์ด์ฒ˜๋Ÿผ `๋‚ด๋ถ€ ๋ณต์žก์„ฑ์„ ์ถ”์ƒํ™”`ํ•˜๋Š”๊ฒŒ ๋ฐ”๋กœ `์„ ์–ธํ˜• ์ปดํฌ๋„ŒํŠธ`์ด๋‹ค.
12571257
- ๋˜ํ•œ, ์œ„์™€ ๊ฐ™์ด react-query์™€ ๊ฒฐํ•ฉํ•œ Suspense๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๊ณผ์ •์œผ๋กœ ๋™์ž‘์„ํ•œ๋‹ค. ์ฐธ๊ณ ํ•ด๋ณด์ž.
12581258
@@ -1266,45 +1266,49 @@ function App() {
12661266
7. MainComponent mount
12671267
```
12681268
1269-
- Tanstack React Query ๊ณต์‹๋ฌธ์„œ์˜ Community Resources์—์„œ๋Š” Suspense๋ฅผ ๋” ํƒ€์ž…์„ธ์ดํ”„ํ•˜๊ฒŒ ์ž˜ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด [useSuspenseQuery](https://suspensive.org/ko/docs/react-query/src/useSuspenseQuery.i18n), [useSuspenseQueries](https://suspensive.org/ko/docs/react-query/src/useSuspenseQueries.i18n), [useSuspenseInfiniteQuery](https://suspensive.org/ko/docs/react-query/src/useSuspenseInfiniteQuery.i18n)๋ฅผ ์ œ๊ณตํ•˜๋Š” [@suspensive/react-query๋ฅผ ์†Œ๊ฐœ](https://tanstack.com/query/v4/docs/react/community/suspensive-react-query)ํ•˜๊ณ  ์žˆ๋‹ค.
1269+
<br />
1270+
1271+
### ๐Ÿ’ก @suspensive/react-query
1272+
1273+
- Tanstack React Query ๊ณต์‹๋ฌธ์„œ์˜ `Community Resources`์—์„œ๋Š” Suspense๋ฅผ ๋” `ํƒ€์ž… ์„ธ์ดํ”„`ํ•˜๊ฒŒ ์ž˜ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด [useSuspenseQuery](https://suspensive.org/ko/docs/react-query/src/useSuspenseQuery.i18n), [useSuspenseQueries](https://suspensive.org/ko/docs/react-query/src/useSuspenseQueries.i18n), [useSuspenseInfiniteQuery](https://suspensive.org/ko/docs/react-query/src/useSuspenseInfiniteQuery.i18n)๋ฅผ ์ œ๊ณตํ•˜๋Š” [@suspensive/react-query](https://tanstack.com/query/v4/docs/react/community/suspensive-react-query)๋ฅผ ์†Œ๊ฐœํ•˜๊ณ  ์žˆ๋‹ค.
12701274
12711275
### AS IS (@tanstack/react-query)
12721276
12731277
```tsx
1274-
import { useQuery } from '@tanstack/react-query'
1278+
import { useQuery } from "@tanstack/react-query";
12751279

12761280
const Example = () => {
12771281
const query = useQuery({
12781282
queryKey,
12791283
queryFn,
12801284
suspense: true,
1281-
})
1285+
});
12821286

1283-
query.data // TData | undefined
1287+
query.data; // TData | undefined
12841288

12851289
if (query.isSuccess) {
1286-
query.data // TData
1290+
query.data; // TData
12871291
}
1288-
}
1292+
};
12891293
```
12901294
12911295
### TO BE (@suspensive/react-query)
12921296
12931297
```tsx
1294-
import { useSuspenseQuery } from '@suspensive/react-query'
1298+
import { useSuspenseQuery } from "@suspensive/react-query";
12951299

12961300
const Example = () => {
12971301
const query = useSuspenseQuery({
12981302
queryKey,
12991303
queryFn,
1300-
}) // suspense: true๊ฐ€ ๊ธฐ๋ณธ์ž…๋‹ˆ๋‹ค.
1304+
}); // suspense: true๊ฐ€ ๊ธฐ๋ณธ์ž…๋‹ˆ๋‹ค.
13011305

13021306
// isSuccess์œผ๋กœ type narrowing์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
1303-
query.data // TData
1304-
}
1307+
query.data; // TData
1308+
};
13051309
```
13061310
1307-
> suspensive/react-query์˜ ํ›…(useSuspenseQuery, useSuspenseQueries, useSuspenseInfiniteQuery)์€ @tanstack/react-query v5 alpha๋ฒ„์ „์— ์ถ”๊ฐ€([๊ด€๋ จ Pull Request](https://github.com/TanStack/query/pull/5739))๋˜๊ณ  ๊ณต์‹ API๋กœ [์ด ํŽ˜์ด์ง€](https://tanstack.com/query/v5/docs/react/guides/suspense)์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
1311+
> suspensive/react-query์˜ ํ›…(useSuspenseQuery, useSuspenseQueries, useSuspenseInfiniteQuery)์€ @tanstack/react-query v5 alpha๋ฒ„์ „์— ์ถ”๊ฐ€([๊ด€๋ จ Pull Request](https://github.com/TanStack/query/pull/5739))๋˜๊ณ  ๊ณต์‹ API๋กœ [์ด ํŽ˜์ด์ง€](https://tanstack.com/query/v5/docs/react/guides/suspense)์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
13081312
13091313
<br />
13101314

0 commit comments

Comments
ย (0)