无法获取查询字符串:路径名已填充,但搜索为空

2024-01-10

我正在使用 React Router + Redux + Redux saga。我访问作为 props 传递给我的组件的位置对象,在其中我尝试获取 URL 的查询字符串部分。

然而,位置的搜索参数始终为空。尽管如此,路径名仍按如下方式填充:

{pathname: "/view/energy?latitude=34.06012&longitude=-118.26997&zoom=11", search: "", hash: "", key: "wsbbq0"}

任何帮助或调试提示都值得赞赏。谢谢!

库版本:

"react-redux": "^7.2.0",
"react-router-dom": "^5.1.2",
"redux-saga": "^1.1.3"

Index

ReactDOM.render(
   <Provider store={store}>
      <Router>
         <Route path="/" component={App} />
         <Route path="/view/:viewId" component={App} />
      </Router>
   </Provider>,
   document.getElementById('root'));

根据location https://reacttraining.com/react-router/web/api/location it 应该有将您的网址拆分为

{
  pathname: "/view/energy",
  search: "?latitude=34.06012&longitude=-118.26997&zoom=11",
  hash: "",
  key: "wsbbq0"
}

但这并没有发生。

它没有发生的原因是因为您正在使用to对象形式并已指定 queryString 作为pathname属性,然后显式指定一个空字符串search财产。尽管如此,请考虑以下方式导航到路径名+搜索:

  •  <Link to="/view/energy?latitude=34.06012&longitude=-118.26997&zoom=11">
       View Energy
     </Link>
    
    正确地将目标路径字符串解析为其组成部分:
    {
      "pathname": "/view/energy",
      "search": "?latitude=34.06012&longitude=-118.26997&zoom=11",
      "hash": "",
      "key": "qje5v8"
    }
    
  •  <Link
       to={{
         pathname:
           "/view/energy?latitude=34.06012&longitude=-118.26997&zoom=11"
       }}
     >
       View Energy
     </Link>
    
    无法分离查询字符串:
    {
      "pathname": "/view/energy?latitude=34.06012&longitude=-118.26997&zoom=11",
      "search": "", // <-- empty string
      "hash": "",
      "key": "f6eqol"
    }
    
  •  <Link
       to={{
         pathname: "/view/energy",
         search: "?latitude=34.06012&longitude=-118.26997&zoom=11"
       }}
     >
       View Energy
     </Link>
    
    正确维护目标路径对象的组成部分:
    {
      "pathname": "/view/energy",
      "search": "?latitude=34.06012&longitude=-118.26997&zoom=11",
      "hash": "",
      "key": "9qlzx8"
    }
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法获取查询字符串:路径名已填充,但搜索为空 的相关文章

随机推荐

  • 实现接口但将成员更改为私有

    默认情况下 接口的所有成员都是公共的 但是我的接口中有一些属性我想用作实现我的接口的一些子类的私有成员 这是可以做的事情吗 还是我在这里偏离了基础 这些天我正在努力在我的架构中使用更多接口 所以我还不太熟悉 接口的要点是它们提供了其他对象可
  • 使用列表对象 Bot 框架进行提示对话框选择

    我正在创建一个 PromptDialog Choice 它填充存储在数据库中的对象选项列表 但是 它只显示对象的类型 而不显示选项的名称 谁能建议我从数据库加载选项并将其与 PromptDialog 绑定的最佳方法 这是我尝试过的 priv
  • 更改 Facebook Like 按钮的大小

    我使用下面的代码来获取 Facebook 的 Like 按钮 现在的问题是 我想更改呈现的 赞 按钮的大小 我尝试了宽度属性 但它根本不起作用 我尝试重写 facebook 用于以下代码的 CSS 类 但重写 CSS 类也不起作用 那么请告
  • 在 Android 上的游戏中购买时 Soomla IAB 错误

    我使用 unity 3d 制作了一个简单的游戏 只是为了测试 Google 服务 对于 Google Play 游戏服务 我使用 googleplayplugin 对于 iab 使用 soomla 插件 我认为所有配置都正确 我在我的 ne
  • LocationManager 正在服务 - 如果 1 分钟内没有修复则需要停止

    我有定期服务 每 5 分钟开始使用一次警报 服务实现 LocationListener 以获取 GPS 定位并将其保存到 SqLite 数据库中 我给服务人员 1 分钟的时间来尽可能获得最佳修复 如果在此之前我的准确率 一切都很好 我还有代
  • 如何在Python中使用密码加密文本?

    令人惊讶的是 在谷歌上很难找到这个问题的直接答案 我想从用户那里收集一段文本和一条消息 例如1PWP7a6xgoYx81VZocrDr5okEEcnqKkyDc hello world 然后我希望能够以某种方式加密 解密带有文本的消息 以便
  • SQL Server 2008 R2 地理距离?

    我创建了一个包含以下列的表 Text varchar 255 Location geography 它们包含荷兰的一些城市作为数据 从谷歌地图获取坐标 Rotterdam POINT 51 925637 4 493408 4326 Utre
  • SVN最佳实践-删除已完成的分支

    完成 重新集成分支后 最佳做法是删除该分支 以便您的头分支文件夹仅显示当前分支吗 如果是这样 什么时候删除重新整合的分支合适 次要版本发布后 这是我们标记的时间 Cheers 根据this https stackoverflow com q
  • 尝试安装 python 时出现错误

    我已经下载了 python 3 6 1 tar xz 然后我提取了它 有一个文件 README rst 这是说明文件 并有如何安装的说明 在 Unix Linux BSD macOS 和 Cygwin 上 configure make ma
  • k-最大双重选择

    想象一下你有两个麻袋 A and B with N and M球分别在其中 每个球都有一个已知的数值 利润 系统会要求您提取 有替换 总利润最大的一对球 由所选球的乘法给出 最佳提取是显而易见的 从其中选择最有价值的球A以及来自B 当你被要
  • 如何使用BluetoothHeadset API获取蓝牙连接的设备

    我想获取蓝牙连接设备的列表 而不仅仅是配对的设备 I found BluetoothHeadset API in API 级别 11它提供了方法getConnectedDevices 获取已连接的蓝牙设备的列表 如何使用此 API 获取蓝牙
  • 对多于一列进行过滤

    我有一个可以从一列中过滤的表格 handleSearch function oEvent var sValue oEvent getParameter value var oFilter new sap ui model Filter RA
  • jqGrid ColumnChooser 有完整的工作示例吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 At http www trirand com jqgridwiki doku php id wiki jquery ui methods
  • 单元测试有哪些流行的命名约定? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Android webview 得到 sslError SSL_UNTRUSTED 但证书有效

    我已经实施了onReceivedSslError我的 WebViewClient 中的方法来正确处理 webview 中无效的 https 证书 Override public void onReceivedSslError WebView
  • 在 Quartz.net 中处理 JobExecutionException

    可能是一个愚蠢的问题 但无论如何 我已经设置了quartz 并且可以安排作业 并且我可以确认作业 实现 IJob 接口 正在运行 查看网站上的文档 教程的第 3 课 允许您从执行方法抛出的唯一异常类型是JobExecutionExcepti
  • 在 C# 中使用反射将 func 转换为谓词

    我基本上想做this https stackoverflow com questions 731249 how to convert funct bool to predicatet 但我不知道 T 是什么 所以我使用反射树和表达式树来构建
  • Retrofit:如何发送带有常量字段的 POST 请求?

    我想发送一个带有一个实际参数的简单 POST 请求 POST token FormUrlEncoded void extendSession Field refresh token final String refreshToken 但是这
  • Node js puppeteer 元数据

    我是 Puppeteer 的新手 我正在尝试使用 Node JS 和 Puppeteer 从网站中提取元数据 我似乎无法正确理解语法 下面的代码可以完美地使用两种不同的方法提取标题标签以及段落标签中的文本 例如 如何提取名称为 descri
  • 无法获取查询字符串:路径名已填充,但搜索为空

    我正在使用 React Router Redux Redux saga 我访问作为 props 传递给我的组件的位置对象 在其中我尝试获取 URL 的查询字符串部分 然而 位置的搜索参数始终为空 尽管如此 路径名仍按如下方式填充 pathn