Skip to content

๋ชจ๋“  mutate ์ค‘๋ณต ํด๋ฆญ ๋ง‰๊ธฐย #389

@NamJwong

Description

@NamJwong

โœจ ์–ด๋–ค ๊ธฐ๋Šฅ์ธ๊ฐ€์š”?

๋ชจ๋“  mutate ์ค‘๋ณต ํด๋ฆญ ๋ง‰๊ธฐ

api ์ค‘๋ณต ์š”์ฒญ์„ ๋ง‰๋Š” ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•

  1. isLoading ํ™œ์šฉ
  2. Lodash debounce, throttle
  3. Semaphore
  4. useIsMutating ํ™œ์šฉํ•˜๊ธฐ (์•ˆ์ข‹์€ ๋ฐฉ๋ฒ•์ธ ๋“ฏ)

์ด ์ค‘์— ๋ชจ๋“  mutate ๋งˆ๋‹ค ์ง์ ‘ ํ•˜๋‚˜ํ•˜๋‚˜ ์ ์šฉํ•˜์ง€ ์•Š๊ณ  ํ•œ ๋ฒˆ์— ๋ชจ๋“  mutate์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค
๋ชป์ฐพ๋Š”๋‹ค๋ฉด .. ํ•˜๋‚˜ํ•˜๋‚˜ ํ•ด์ฃผ์–ด์•ผ์ฃ 
๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด 1๋ฒˆ์ด ๊ฐ€์žฅ ํ™•์‹คํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

isLoading ํ™œ์šฉํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•

<button disabled={isLoading}>Create</button>
<button onClick={() => isLoading && mutate()}>Create</button>

์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์ด ํ›จ์”ฌ ์ข‹์€ ๊ฒƒ ๊ฐ™๋‹ค.

โœ… To Dos

  • ๋ชจ๋“  mutate ์ค‘๋ณต ํด๋ฆญ ๋ง‰๊ธฐ

Metadata

Metadata

Assignees

Labels

chore ๐Ÿฃ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ์™ธ ๋ถ€์ˆ˜์ ์ธ ์ผ๋“ค

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions