useRouter从下一个/导航不立即加载路由,我不得不等待一个littel似乎点击没有注册,它等待页面呈现在服务器端,然后重定向既不是在浏览器中的URL变化,直到页面呈现在服务器端。我想要的是URL应该改变,页面的数据应该加载在重定向页面上
0vvn1miw1#
尝试在路由更改期间添加加载指示器,以获得页面正在加载的视觉反馈。
const [loading, setLoading] = useState(false); const fetchData = async () => { setLoading(true); try { const response = await fetch('endpoint'); setLoading(false); router.push("/url") } catch (error) { console.error('Error fetching data:', error); setLoading(false); } };
字符串
olmpazwi2#
你可以添加一个加载器来避免这个问题。只要在你的文件夹中添加一个loading.tsx就可以了,这个文件夹中有你的layout.tsx文件。这个加载器将防止您的延迟。您可以在此处查看如何添加加载
2条答案
按热度按时间0vvn1miw1#
尝试在路由更改期间添加加载指示器,以获得页面正在加载的视觉反馈。
字符串
olmpazwi2#
你可以添加一个加载器来避免这个问题。只要在你的文件夹中添加一个loading.tsx就可以了,这个文件夹中有你的layout.tsx文件。
这个加载器将防止您的延迟。
您可以在此处查看如何添加加载