5. usehooks-ts

ํ•™์Šต ํ‚ค์›Œ๋“œ

  • usehooks-ts

    • useBoolean

    • useEffectOnce

    • useFetch

    • useInterval

    • useEventListener

    • useLocalStorage

    • useDarkMode

  • swr

  • react-query

์‹ค์Šต ๋ ˆํฌ - usehooks-ts ๋ธŒ๋žœ์น˜

๋ชจ๋“  hook์— ๋Œ€ํ•œ ์ฝ”๋“œ๋“ค

์„ค์น˜

npm i usehooks-ts

์‚ฌ์šฉ

์—ฌ๋Ÿฌ ํ›…๋“ค์ด ๋งŒ๋“ค์–ด์ ธ ์žˆ๋‹ค. ๊ฑ ํ˜ธ์ถœํ•ด์„œ ์“ฐ๋ฉด๋จ.

import { useEffect, useState } from "react";
import { useBoolean } from "usehooks-ts";

export default function TimerControl() {
    const {value:playing, toggle} = useBoolean()
    const {count, increment} = useCounter(0)

    return (
        <div>
            {playing ?(
                <Timer />
            ): (
                <p>Stop</p>
            ) }
            <button type="button" onClick={toggle}>
                Toggle
            </button>
            <hr />
            <p>{count}</p>
            <button type="button" onClick={increment}>
                increase
            </button>
            
        </div>
    )
}

useEffectOnce ๋ผ๋Š” ํ›…๋„ ๋ถˆ๋Ÿฌ ์“ธ ์ˆ˜ ์žˆ๋Š”๋ฐ,

์˜์กด์„ฑ ๋ฐฐ์—ด๋งŒ ๋บ€ ๊ฒƒ์ด๊ณ  ํ•œ๋ฒˆ๋งŒ ์‹คํ–‰์‹œํ‚ค๋Š” ํ›…์ด๋‹ค.

๋ช‡ ๊ฐ€์ง€ ๊ธฐ๋Šฅ์ด ์‚ด์ง ๋” ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋„ ์žˆ๋‹ค

  • use-http

์ข€ ๋” ๋ณต์žกํ•˜์ง€๋งŒ ์บ์‹œ ์ด์Šˆ๋ฅผ ๊ณ ๋ คํ•œ ์ข‹์€ ๋Œ€์•ˆ

swr

react-query

useInterval

setInterval ๊ด€๋ จํ•ด ๋ฆฌ์•กํŠธ์—์„œ ์ฝ”๋“œ๋ฅผ ์งœ๋‹ค๋ณด๋ฉด ์ƒํƒœ์™€ ๋งž๋ฌผ๋ ค ๋ฌธ์ œ๊ฐ€ ๋  ํ™•๋ฅ ์ด ๋‹ค๋ถ„ํ•ด์„œ useInterval์„ ์“ฐ๋Š”๊ฒŒ ์ข‹๋‹ค๊ณ  ํ•จ.

useEventListener

์•„๋ฌด๋ฐ๋‚˜ ํด๋ฆญํ–ˆ์„๋•Œ์˜ listener๋ผ๋˜์ง€,

๋กœ๊ทธ์ธ์„ ํ•˜๋Š”๋ฐ ์™ธ๋ถ€์™€ ๋งŽ์ด ๋ฌผ๋ ค์žˆ๋Š” ์ฝ”๋“œ๊ฐ€ ์žˆ์„๋•Œ

ํ›…์œผ๋กœ ๋นผ๊ฑฐ๋‚˜ ์•„์˜ˆ ๋ฐ–์œผ๋กœ ๋นผ๊ณ ์‹ถ์„๋•Œ ์ด๊ฑธ ์“ฐ๋ฉด ํŽธํ•˜๋‹ค๊ณ  ํ•จ. ์ผ€์ด์Šค ์Šคํ„ฐ๋”” ํ•„์š”.

useLocalStorage

๊ฐ์ฒด๋ฅผ ๋„ฃ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

๋‹คํฌ๋ชจ๋“œ ์„ธํŒ…์— ์œ ์šฉ.

๋กœ์ปฌ์— ๋„ฃ๋Š” ์ด์œ ๋Š” ์ƒˆ๋กœ๊ณ ์นจํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์ด๋ฒคํŠธ๊ฐ€ ์žˆ์–ด๋„ ์œ ์ง€ํ•˜๊ณ  ์‹ถ๊ธฐ ๋•Œ๋ฌธ.

์ „์—ญ์ ์œผ๋กœ ๋‹ค๋ฅธ๋ฐ์„œ ๋ฐ›์•„ ์“ธ ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋….

. . . ์ด ์™ธ์—๋„ ๋งŽ๋‹ค.

Last updated