React JS と Lenis のスムーズスクロールで画面を切り替えるときにトップに戻る方法
<p>スムーズなスクロールを実現するために lenis を使用しており、App.js で使用する ScrollToTop.js ファイルがあります。ページがスクロールしていないときは正常に動作しますが、別のページに移動するボタンをクリックして「スムーズなスクロール」が発生すると、scrollToTop が動作しません。これを修正する方法を知っている人はいますか? </p>
<p>ScrollToTop.js</p>
<pre class="brush:php;toolbar:false;">import { useEffect } from "react";
「react-router-dom」からインポート { useLocation };
"gsap" から { gsap } をインポートします。
import { 色 } から "./constants";
デフォルト関数 ScrollToTop() をエクスポート {
const { パス名 } = useLocation();
const body = document.querySelector("body");
useEffect(() => {
window.scrollTo(0, 0);
// gsap.to(body, { 継続時間: 0, 背景色: color.white });
}, [パス名]);
null を返します。
}</pre>
<p>すべてのページで useLayoutEffect を使用してみましたが、機能しません</p>