react-router 4.0 在 uc 使用的时候,碰见了一个问题。请求帮助。

发布于 2022-09-06 07:45:08 字数 734 浏览 24 评论 0

问题背景:

我公司的项目分为主站和第三方静态页,主站的项目是使用 react 和 react-router4 写的,主站的公共组件( header 这种的)可以被第三方静态页引用。写法如下:

因为是在一个磁盘下,通过修改页面的 baseUrl 和 webpack 的打包的方式来使第三方静态页项目可以引用主站的组件。

    <script> var require = { baseUrl: '/mobile'} </script>
    externals: {
        'header-nav': 'header-nav'
    }

问题:

header 有返回按钮的功能,代码就是单纯的 history.back();因为第三方页面引用的 header,所以第三方页面也是可以返回的。

但是通过测试,我发现在小米 pad 的 uc 浏览器下,只要是按照 主站-->第三方页面 这种顺序访问页面,头部的返回按钮就会失效,调试的时候也没有异常出现,就是 history.back()执行了,但是没有反应。但是只要是主站的页面之间相互访问,后退的功能是能够生效的。

我查了一下代码,发现主站内的页面都是通过 react-router 配置,走的都是 history 的 api 访问的,一旦访问的是第三方页面,就是使用 window.open();
大家有遇见过类似的问题请告诉我下,或者是不是代码的写法有问题?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文