重构核心模块并同步更新项目配置与相关实现

This commit is contained in:
truewhile
2026-09-13 20:36:14 +08:00
parent 386fc358d1
commit 9a68ef701f
38 changed files with 1587 additions and 678 deletions
+8 -6
View File
@@ -1,4 +1,4 @@
import { useEffect, useLayoutEffect, useRef, useState } from 'react'
import { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react'
import { createPortal } from 'react-dom'
import { Link, useLocation, useNavigate } from 'react-router-dom'
import { ArrowLeft, Film, LoaderCircle, Menu, Search, Star, X } from 'lucide-react'
@@ -132,12 +132,12 @@ function LayoutHeaderSearch() {
const locationKey = `${location.pathname}${location.search}`
const prevLocationKeyRef = useRef(locationKey)
const setSearchOpen = (open: boolean) => {
const setSearchOpen = useCallback((open: boolean) => {
isOpenRef.current = open
setIsOpen(open)
}
}, [])
const dismissSearch = (clearQuery: boolean) => {
const dismissSearch = useCallback((clearQuery: boolean) => {
suppressInputRef.current = true
setSearchOpen(false)
if (clearQuery) {
@@ -156,9 +156,11 @@ function LayoutHeaderSearch() {
window.setTimeout(() => {
suppressInputRef.current = false
}, 0)
}
}, [setSearchOpen])
const dismissSearchRef = useRef(dismissSearch)
dismissSearchRef.current = dismissSearch
useEffect(() => {
dismissSearchRef.current = dismissSearch
}, [dismissSearch])
useEffect(() => {
const trimmed = query.trim()