在 React 中,我可以使用 history.goBack()

问题描述

我正在使用 react-query 并且我想在用户保存触发查询失效的表单时将用户发送回上一页 - 除非返回会将用户发送到当前页面用户的历史记录从该页面开始),因为这会导致无限循环。

这是我的代码

  const history = useHistory();
  const mutatePost = useMutation(
    (jsonData : InterfaceJsonData) => fetchPostWithUserAuth(
      postUrl(id),fetchOptionsPost(jsonData,id),),{
      onSuccess: () => {
        history.goBack();

如何查看 history.goBack() 的去向?在用户当前页面开始的极少数情况下,我不想不小心造成无限循环。

我使用 history.goBack() 是因为该组件在三个地方使用,我想重定向到相关页面(三个页面之一)。如果有什么方法可以搜索历史记录来检查前三个页面中的哪个页面被访问过,那就完美了。

解决方法

当用户到达您的网站时,您可以构建一个历史堆栈,您可以将用户浏览的每个页面推入一个数组。然后,如果用户按下后退按钮,您就知道发生了什么。如果数组为空,您知道,这是第一页。 或者另一种解决方案可能是 this

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...