diff options
| author | Rafi Zadanly <rafizadanly@gmail.com> | 2022-11-16 13:22:23 +0700 |
|---|---|---|
| committer | Rafi Zadanly <rafizadanly@gmail.com> | 2022-11-16 13:22:23 +0700 |
| commit | 983fa3b902f08294621b3902c823e05b8d09e858 (patch) | |
| tree | cf7c6028b989e43aabb57ca60e597c94315c9132 /src/components | |
| parent | 5786bd52bfc098d144dd77332c32edabd7cec251 (diff) | |
Blur input search on query changed
Diffstat (limited to 'src/components')
| -rw-r--r-- | src/components/Header.js | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/components/Header.js b/src/components/Header.js index f7607a18..337483bb 100644 --- a/src/components/Header.js +++ b/src/components/Header.js @@ -4,7 +4,7 @@ import ShoppingCartIcon from "../icons/shopping-cart.svg"; import SearchIcon from "../icons/search.svg"; import MenuIcon from "../icons/menu.svg"; import ChevronRightIcon from "../icons/chevron-right.svg"; -import { useState } from "react"; +import { useEffect, useRef, useState } from "react"; import Head from "next/head"; import Logo from "../images/logo.png"; import { useRouter } from "next/router"; @@ -14,8 +14,15 @@ export default function Header({ title }) { const router = useRouter(); const { q = '' } = router.query; const [searchQuery, setSearchQuery] = useState(q); + const searchQueryRef = useRef(); const [isMenuActive, setIsMenuActive] = useState(false); + useEffect(() => { + if (q) { + searchQueryRef.current.blur(); + } + }, [q]) + const openMenu = () => setIsMenuActive(true); const closeMenu = () => setIsMenuActive(false); @@ -74,6 +81,7 @@ export default function Header({ title }) { </div> <form onSubmit={searchSubmit} className="flex mt-2"> <input + ref={searchQueryRef} type="text" name="q" onChange={(e) => setSearchQuery(e.target.value)} |
