Skip to content

Commit f2d0ec6

Browse files
committed
chore: improve slightly fallback suspense UI in suspense example
1 parent a6b7f36 commit f2d0ec6

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

examples/query/react/suspense/src/SuspendedPokemon.tsx

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { memo } from 'react';
12
import { Suspense, useState } from 'react'
23
import { Pokemon } from './Pokemon'
34
import { PokemonName } from './pokemon.data'
@@ -11,13 +12,13 @@ export interface SuspendedPokemonProps {
1112

1213
function BuggyComponent({ errorCount, name }:Pick<SuspendedPokemonProps, 'name'> & { errorCount: number }) {
1314
if(!errorCount) {
14-
throw new Error('error while rendering:' + name)
15+
throw new Error(`error while rendering: ${name}, errorCount ${errorCount}`);
1516
}
1617

1718
return <></>
1819
}
1920

20-
export function SuspendedPokemon({
21+
export const SuspendedPokemon = memo(function SuspendedPokemon({
2122
name,
2223
suspendOnRefetch,
2324
throwOnIntialRender,
@@ -45,9 +46,9 @@ export function SuspendedPokemon({
4546
{throwOnIntialRender && <BuggyComponent name={name} errorCount={errorCount} />}
4647
<Suspense
4748
fallback={
48-
<div>
49-
suspense fallback <br />
50-
loading pokemon {name}
49+
<div className={'suspense-fallback-wrapper'}>
50+
Suspense fallback UI.<br />
51+
Loading pokemon {name}
5152
</div>
5253
}
5354
>
@@ -56,4 +57,4 @@ export function SuspendedPokemon({
5657
</ErrorBoundary>
5758
</div>
5859
)
59-
}
60+
});

examples/query/react/suspense/src/styles.css

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,13 @@
88
grid-template-columns: repeat(auto-fill, 180px);
99
grid-gap: 20px;
1010
}
11+
12+
.suspense-fallback-wrapper {
13+
display: flex;
14+
place-items: center;
15+
background: #e0e0e0;
16+
color: #202020;
17+
border-radius: 8px;
18+
font-size: 1.1rem;
19+
height: 250px;
20+
}

0 commit comments

Comments
 (0)