Design-loving front-end engineer
Ryong
Design-loving front-end engineer
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
    • Framework
    • React
      • Concept
      • Library
      • Hook
      • Component
      • Test
    • NodeJS
    • Android
      • Concept
      • Code
      • Sunflower
      • Etc
    • Flutter
      • Concept
      • Package
    • Web
    • Web
    • CSS
    • Language
    • JavaScript
    • TypeScript
    • Kotlin
    • Dart
    • Algorithm
    • Data Structure
    • Programmers
    • Management
    • Git
    • Editor
    • VSCode
    • Knowledge
    • Voice
Design-loving front-end engineer

Ryong

React/Hook

[ Hook ] useHover

2022. 8. 10. 10:50

๐Ÿ”ด  Introduction

โšช  ์ปดํฌ๋„ŒํŠธ์— Hover ์ด๋ฒคํŠธ ๋ฐœ์ƒ์‹œ ์ „๋‹ฌํ•œ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰์‹œ์ผœ์ฃผ๋Š” Hook

 

๐ŸŸ   Hook

 
import { useEffect, useRef } from "react";

export const useHover = (onHover) => {
    const element = useRef();
    useEffect(() => {
        if (typeof onHover !== "function") {
            return;
        }
        if (element.current) {
            element.current.addEventListener("mouseenter", onHover);
        }
        return () => {
            if (element.current) {
                element.current.removeEventListener("mouseenter", onHover);
            }
        };
    }, []);
    return element;
};

 

๐ŸŸก  Usage

 
import { useHover } from "./hooks/useHover";

function App() {
    const sayHello = () => console.log("say hello");
    const title = useHover(sayHello);
    return (
        <div className="App">
            <h1 ref={title}>Hi</h1>
        </div>
    );
}

export default App;

 

์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'React > Hook' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ Hook ] useScroll  (0) 2022.08.10
[ Hook ] usePreventLeave  (0) 2022.08.10
[ Hook ] useNotification  (0) 2022.08.10
[ Hook ] useConfirm  (0) 2022.08.10
[ Hook ] useBeforeLeave  (0) 2022.08.10
    'React/Hook' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [ Hook ] usePreventLeave
    • [ Hook ] useNotification
    • [ Hook ] useConfirm
    • [ Hook ] useBeforeLeave
    Design-loving front-end engineer
    Design-loving front-end engineer
    ๋””์ž์ธ์— ๊ด€์‹ฌ์ด ๋งŽ์€ ๋ชจ๋ฐ”์ผ ์•ฑ ์—”์ง€๋‹ˆ์–ด Ryong์ž…๋‹ˆ๋‹ค.

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”