ν
-
- [React.js] use-debounce ν¨ν€μ§
use-debounce ν¨ν€μ§λ€μ΄κ°λ©°λ¦¬μ‘νΈ(React.js)μ Next.js κ°μ νκ²½μμ μ»΄ν¬λνΈκ° μμ£Ό μ λ°μ΄νΈ λμ§ μλλ‘ ν΄μ£Όλ @use-debounce@ ν¨ν€μ§μ λν΄ μ 리ν΄λ³Έλ€. use-debounceκ°λ 리μ‘νΈ(React.js)μ Next.js κ°μ νκ²½μμ μ»΄ν¬λνΈκ° μμ£Ό μ λ°μ΄νΈλμ§ μλλ‘ νΉμ λμμ λλ°μ΄μ€(Debounce) νκΈ° μν΄ μ¬μ©ν μ μλ μ νΈλ¦¬ν° ν μ¬μ©μκ° μ λ ₯μ λΉ λ₯΄κ² λ°λ³΅ν λ λΆνμν 리λ λλ§μ΄λ API νΈμΆμ λ°©μ§νλ λ° μ μ©νλ€. λλ°μ΄μ€(Debounce)μ¬μ©μκ° λ§μ§λ§μΌλ‘ λ°μν μ΄λ²€νΈ μ΄ν, μΌμ μκ° λμ μΆκ° μ΄λ²€νΈκ° λ°μνμ§ μμμ λλ§ ν¨μλ₯Ό μ€ννλ ν¨ν΄μ£Όλ‘ API μμ²μ΄λ 리μμ€κ° λ§μ΄ νμν μ΄λ²€νΈ μ²λ¦¬μ μ¬μ©λλ€.κ²μμ°½μμ μ¬μ©μκ° μ λ ₯ν λλ§λ€..
1 2024.10.27 -
- [React.js] useSearchParams ν (React Router)
useSearchParams ν (React Router)λ€μ΄κ°λ©°λ¦¬μ‘νΈ λΌμ°ν°(React Router)μμ μ 곡νλ @useSearchParams@ ν μ λν΄ μ 리ν΄λ³Έλ€. useSearchParamsκ°λ 리μ‘νΈ λΌμ°ν°(React Router)λ₯Ό μ¬μ©νμ¬ URLμ 쿼리 νλΌλ―Έν°λ₯Ό μ½κ³ μ€μ νλ λ° μ μ©ν λκ΅¬μ΄ ν μ μ¬μ©νλ©΄ μ»΄ν¬λνΈκ° URLμ 쿼리 μ€νΈλ§μ μ½κ² μ κ·Όνκ³ μ‘°μν μ μλ€.React Router v6μμ λμ λμκ³ , κΈ°μ‘΄μ @useLocation@κ³Ό @useHistory@ ν μ κ²°ν©ν κΈ°λ₯μ μ 곡νλ€. μ¬μ©λ²import React from 'react';import { useSearchParams } from 'react-router-dom';function MyComponent() { /..
2024.07.08 -
- [React.js] useFetcher ν (React Router)
useFetcher ν (React Router)λ€μ΄κ°λ¬λ¦¬μ‘νΈ λΌμ°ν°(React Router)μμ μ 곡νλ @useFetcher()@ ν μ λν΄ μ 리ν΄λ³Έλ€. useFetcherκ°λ 리μ‘νΈ λΌμ°ν°(React Router)μμ νμ΄μ§ μ ν μμ΄ λ°μ΄ν° λ‘λ©μ΄λ μ‘μ μ μ²λ¦¬ν μ μκ² λμμ£Όλ ν (Hook)μ£Όλ‘ νΌ μ μΆμ΄λ λ°μ΄ν° νμΉμ λ°±κ·ΈλΌμ΄λμμ μ²λ¦¬νκ³ , μ¬μ©μμκ² μκ°μ μ ν μμ΄ κ²°κ³Όλ₯Ό 보μ¬μ€μΌ νλ κ²½μ°μ μ¬μ©νλ©΄ μ μ©νλ€. μ£Όμ κΈ°λ₯λ°μ΄ν° λ‘λ© λ° μ‘μ νΈλ¦¬κ±°λ‘λ© μνλ₯Ό κ΄λ¦¬νκ³ , λ°μ΄ν°λ₯Ό λΉλκΈ°μ μΌλ‘ κ°μ Έμ€κ±°λ μλ²μ λ°μ΄ν°λ₯Ό μ μΆν μ μλ€.νμ΄μ§ μ ν μμ.νμ΄μ§ μ ν μμ΄ λ°μ΄ν°λ₯Ό κ°μ Έμ€κ±°λ μ μΆν μ μμΌλ―λ‘, μ¬μ©μ κ²½νμ΄ λ³΄λ€ λ§€λλ½λ€.μν κ΄λ¦¬νμ¬ λ‘λ© μνμ λ‘λ© μλ£ ν λ°μ΄ν°λ₯Ό..
2024.07.07 -
- [React.js] useEffectμ useCallback
useEffectμ useCallbackλ€μ΄κ°λ©°λ¦¬μ‘νΈμμ μ¬μ©λλ @useCallback@κ³Ό @useEffect@μ λν΄ μμ보μ. @useCallback@리μ‘νΈμμ ν¨μλ₯Ό λ©λͺ¨μ΄μ μ΄μ (Memoization)νλ λ° μ¬μ©λλ€.λΆνμν ν¨μμ μ¬μμ±μ λ°©μ§νκ³ , ν¨μκ° μμ‘΄νλ κ°μ΄ λ³κ²½λ λλ§ μλ‘μ΄ ν¨μλ₯Ό μμ±νλλ‘ ν μ μλ€. μμ μ½λμλμ μ½λμμ @handleClick@ ν¨μλ @count@ λ³μκ° λ³κ²½λ λλ§ μ¬μμ± λλ€.κ·Έλ μ§ μμ κ²½μ° @handleClick@ ν¨μλ μ¬μμ±λμ§ μμΌλ©°, κ°μ ν¨μλ₯Ό κ³μ μ¬μ©νκ² λλ€.μ΄λ κ² ν κ²½μ° ν¨μμ μ¬μμ±μ μ΅μννμ¬ μ±λ₯ μ΅μ νλ₯Ό νλλ° λμμ μ€ μ μλ€.import React, { useCallback, useState } from 'rea..
2024.06.24 -
- [React.js] useReducer ν
useReducer ν λ€μ΄κ°λ©°λ¦¬μ‘νΈ(React.js)μμ μ¬μ©λλ @useReducer@ ν μ λν΄ μ 리ν΄λ³Έλ€. @useReducer@ κ°λ μ»΄ν¬λνΈμ 리λμ(Reducer)λ₯Ό μΆκ°νλ 리μ‘νΈ ν const [state, dispatch] = useReducer(reducer, initialArg, init?) (μ°Έκ³ ) 리λμ€(Reduce, @reduce()@)λ°°μ΄μ κ° μμμ λν΄ μ 곡λ ν¨μ(@callback@ ν¨μ)λ₯Ό μ€ννκ³ νλμ κ²°κ³Όκ°μ λ°ννλ λ©μλλ°°μ΄μ κ° μμλ₯Ό λμ (Accumulate)νμ¬ λ¨μΌ κ°μΌλ‘ μ€μ΄λ μν μ νλ€.μ£Όλ‘ ν©κ³, νκ· , μ΅λκ°, μ΅μκ°, κ°μ²΄ μμ± λ± λ€μν κ²½μ°μ μ μ©νκ² μ¬μ©λλ€.const array = [1, 2, 3, 4, 5];const result = a..
2024.06.07 -
- [React.js] λ§μ°μ€ νΈλ² ν¨κ³Όλ₯Ό μ μ©νκΈ° μν 컀μ€ν ν λ§λ€κΈ° (useHover.js)
λ§μ°μ€ νΈλ² ν¨κ³Όλ₯Ό μ μ©νκΈ° μν 컀μ€ν ν λ§λ€κΈ° (useHover.js) λ€μ΄κ°λ©° μμ μμ λ§μ°μ€ 컀μλ₯Ό νΈλ² μ, ν¨κ³Όκ° μλν μ μλλ‘ μ»€μ€ν ν μ λ§λ€μ΄λ³΄μ. λ°©λ² κΈ°μ‘΄μ λ°©λ² μ»€μ€ν ν μ μ¬μ©νμ§ μμ κ²½μ°, @mouseover@, @mouseout@μ λν κ°κ°μ μ΄λ²€νΈ νΈλ€λ¬ ν¨μλ₯Ό λ§λ€μ΄μ λ§μ°μ€ νΈλ² ν¨κ³Όλ₯Ό μ μ©μν€κ³ μΆμ λμμ μ°κ²°ν΄ μ£Όλ λ°©μμΌλ‘ ꡬνν μ μμλ€. import React, { useState } from react; const MyComponent = () => { const [isHovered, setIsHovered] = useState(false); const handleMouseOver = () => { setShowPopup(true); }; cons..
2024.02.20 -
- [React.js] ν (Hook)
ν (Hook)λ€μ΄κ°λ©°λ¦¬μ‘νΈ(React)μμ μ¬μ©λλ κΈ°λ³Έμ μΈ ν (Hook)λ€μ λν΄ μμ보μ. ν (Hook)κ°λ ν¨μ μ»΄ν¬λνΈμμ μν(State)λ μλͺ μ£ΌκΈ° κΈ°λ₯ λ±μ μ¬μ©ν μ μλλ‘ λμμ£Όλ κΈ°λ₯ν΄λμ€ μ»΄ν¬λνΈμ κΈ°λ₯μ ν¨μ μ»΄ν¬λνΈμμλ μ¬μ©ν μ μκ² ν΄μ€λ€.κ°μ₯ λ리 μ¬μ©λλ ν μΌλ‘λ @useState@, @useEffect@, @useContext@ λ±μ΄ μλ€.κ°κ°μ ν μ νμ©νλ©΄ ν¨μ μ»΄ν¬λνΈμμ μν κ΄λ¦¬, λΆμ ν¨κ³Ό μ²λ¦¬, μ μμ μΈ λ°μ΄ν° 곡μ λ±μ νΈλ¦¬νκ² ν μ μλ€.μ΄ μΈμλ λ§μ λ€μν ν μ΄ μμΌλ©°, μ§μ 컀μ€ν ν μ λ§λ€μ΄ μ¬μ©ν μλ μλ€.ν μ μ¬μ©νλ©΄ ν¨μ μ»΄ν¬λνΈμμ μνλ₯Ό κ΄λ¦¬νκ³ , μλͺ μ£ΌκΈ° λ©μλλ₯Ό μ΄μ©ν μ μμ΄ ν¨μ¬ κ°κ²°νκ³ μ μ°ν μ½λλ₯Ό μμ±ν μ μκ² λλ€. μ’ λ₯..
2023.12.13