react-router如何监听从外部系统跳转进来的路由?

新手上路,请多包涵

问题描述

react + react-router的系统内部的路由变化可以使用history.listen()来监听,但是如果某一个路由是从外部系统跳转进来该如何监听呢?

问题出现的环境背景及自己尝试过哪些方法

这种情况下并不能触发history.listen()

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

componentDidMount() {
    this.props.history.listen(({ pathname }) => {
      console.log(pathname)
    })
}

你期待的结果是什么?实际看到的错误信息又是什么?

可以监听从外部系统跳转进来的路由,并拿到对应的路由信息。

阅读 2.5k
1 个回答

思路之一是:比如从A跳转到B(比如baidu)时,A在目标url尾部加上路由信息。
这样在B系统,就能获取到url里边的附加信息,如下例中的routeInfo

location.href = 'https://www.baidu.com?routeInfo=abc'
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏