我用的是react路由.我想检测我来自的上一个页面(在同一个应用程序中).我有路由在我的上下文中.但是,我没有在路由对象上看到任何属性,比如"前一条路径"或历史记录.我该怎么做?

推荐答案

可以在componentWillReceiveProps生命周期方法中保存上一条路径.逻辑与react-router份文档中的troubleshooting section份非常接近.

<Route component={App}>
  {/* ... other routes */}
</Route>

const App = React.createClass({
  getInitialState() {
    return { prevPath: '' }
  },

  componentWillReceiveProps(nextProps) {
    if (nextProps.location !== this.props.location) {
      this.setState({ prevPath: this.props.location })
    }
  }
})

最近,从州政府获取信息.

Reactjs相关问答推荐

Firebase删除UserWithEmail AndPassword仅创建匿名用户

从`redux—thunk`导入thunk `在stackblitz中不起作用

在Reaction中单击时,按钮未按预期工作

Reaction Google Maps API无法获取标题

在ReactJS的monaco编辑器中添加美人鱼语法

悬停轴时重新绘制自定义参照线

useRef()的钩子调用无效

使用获取的数据更新状态,但在try console.log 时它给出未定义

在React中使用if条件时如何更改Tailwind中元素的文本 colored颜色

如何隐藏移动导航栏后面的向下滚动图标和文本?

react :输入失go 焦点,输入一个字符,

useEffect内部的RETURN语句在首次按钮点击事件中似乎无效的原因是什么?

React - 拖放 UML

为嵌套路由配置一个不存在的 url 的重定向

React:如何设置光标 Select

理解 React 中的 PrevState

react 路由路由加载器不适用于嵌套组件

为什么重新渲染不会影响 setTimeout 的计数?

单击当前子div时如何更改p标签的图像和样式?react

如何在 React x 中返回组件?