+
diff --git a/src/components/widgets/post/PostPinIcon.tsx b/src/components/widgets/post/PostPinIcon.tsx
index 8cd13b3b4d..1163429706 100644
--- a/src/components/widgets/post/PostPinIcon.tsx
+++ b/src/components/widgets/post/PostPinIcon.tsx
@@ -27,7 +27,7 @@ export const PostPinIcon = memo(({ pin, id }: { pin: boolean; id: string }) => {
return (
{
setCollapse((c) => !c)
}}
>
-
+
此数据所有权由区块链加密技术和智能合约保障仅归创作者所有。
diff --git a/src/providers/root/page-scroll-info-provider.tsx b/src/providers/root/page-scroll-info-provider.tsx
index c2f4ba76ea..fc8c52e479 100644
--- a/src/providers/root/page-scroll-info-provider.tsx
+++ b/src/providers/root/page-scroll-info-provider.tsx
@@ -1,6 +1,6 @@
'use client'
-import { useCallback, useEffect, useRef } from 'react'
+import { startTransition, useCallback, useEffect, useRef } from 'react'
import { atom, useAtomValue, useSetAtom } from 'jotai'
import { selectAtom } from 'jotai/utils'
import type { FC, PropsWithChildren } from 'react'
@@ -21,17 +21,26 @@ const ScrollDetector = () => {
const setPageScrollLocation = useSetAtom(pageScrollLocationAtom)
const setPageScrollDirection = useSetAtom(pageScrollDirectionAtom)
const prevScrollY = useRef(0)
+
useEffect(() => {
- window.addEventListener('scroll', () => {
+ const scrollHandler = () => {
const currentTop = document.documentElement.scrollTop
setPageScrollDirection(
prevScrollY.current - currentTop > 0 ? 'up' : 'down',
)
prevScrollY.current = currentTop
+ startTransition(() => {
+ setPageScrollLocation(prevScrollY.current)
+ })
+ }
+ window.addEventListener('scroll', scrollHandler)
+
+ scrollHandler()
- setPageScrollLocation(prevScrollY.current)
- })
+ return () => {
+ window.removeEventListener('scroll', scrollHandler)
+ }
}, [])
return null