Javascript React Chrome扩展-React路由器v4不';无法从页面内容接收URL更改事件

Javascript React Chrome扩展-React路由器v4不';无法从页面内容接收URL更改事件,javascript,reactjs,google-chrome-extension,react-router,react-router-v4,Javascript,Reactjs,Google Chrome Extension,React Router,React Router V4,我有一个react应用程序,我用content\u脚本将它插入了一个chrome扩展。它基本上是页面上的覆盖,显示基于路线的上下文相关工具。问题是现有页面内容链接不会导致我的扩展中的react router在单击时更新其历史记录。因此,当用户使用实际的网站链接更改页面时,我的应用程序不会显示正确的工具。只有当他们按正确的路线刷新时 当用户单击现有页面内容上的链接时,是否有办法让react router知道并更新其历史记录?也许您可以尝试使用“hashchange”事件侦听器侦听url更改,然后将

我有一个react应用程序,我用
content\u脚本
将它插入了一个chrome扩展。它基本上是页面上的覆盖,显示基于路线的上下文相关工具。问题是现有页面内容链接不会导致我的扩展中的react router在单击时更新其历史记录。因此,当用户使用实际的网站链接更改页面时,我的应用程序不会显示正确的工具。只有当他们按正确的路线刷新时


当用户单击现有页面内容上的链接时,是否有办法让react router知道并更新其历史记录?

也许您可以尝试使用“hashchange”事件侦听器侦听url更改,然后将url更改推送到react router with browserHistory.push(“/some/path”).

不确定
react路由器是否会在这里为您服务。收听url更改怎么样?对于react应用程序之外的用例来说,这似乎很好,但我不确定如何使用此事件侦听器来指示扩展中的react路由器进行更新。但这可能是进一步探索的一个好方向。您可以使用chrome.webNavigation.onHistoryStateUpdated和.onReferenceFragmentUpdated在后台页面中检测页面内导航,然后向您的内容脚本应用程序发送消息。这似乎就是答案。你能将此作为问题的答案提交给我吗?当我有机会实现它时,如果它有效,我会将它标记为已解决。我相信hashchange只有在你使用
#
对url进行更改时才会出现?不