如何在React JS和Lenis平滑滾動中切換螢幕時滾動回頂部
<p>我正在使用lenis來實現平滑滾動,並且我有一個ScrollToTop.js文件,我在我的App.js中使用它。當頁面沒有滾動時,它運行得很好,但是當我點擊一個按鈕,將我帶到另一個頁面時,“平滑滾動”正在發生時,scrollToTop不起作用,有人知道如何解決這個問題嗎? </p>
<p>ScrollToTop.js</p>
<pre class="brush:php;toolbar:false;">import { useEffect } from "react";
import { useLocation } from "react-router-dom";
import { gsap } from "gsap";
import { colors } from "./constants";
export default function ScrollToTop() {
const { pathname } = useLocation();
const body = document.querySelector("body");
useEffect(() => {
window.scrollTo(0, 0);
// gsap.to(body, { duration: 0, backgroundColor: colors.white });
}, [pathname]);
return null;
}</pre>
<p>我已經嘗試在每個頁面中使用useLayoutEffect,但不起作用</p>