【问题标题】:How to get the parameter after question mark in react router?如何在反应路由器中获取问号后的参数?
【发布时间】:2017-08-31 08:02:44
【问题描述】:

在我的路线中做出反应,我已经映射了类似的组件

<Route path="/search/:id" component={Search}/>

所以,我期待一个类似 search/jeans 或 search/shirts 的 URL。但在某些情况下,我会得到像

这样的 URL 模式
/search/?text=shirts

这是我无法处理的。请建议我该如何进行。我想从该 URL 获取“衬衫”的值。如何让现有路由来处理这个不同的 URL?

【问题讨论】:

  • cannot 了。请参阅下面的解释。

标签: javascript reactjs react-router react-redux react-router-v4


【解决方案1】:

不幸的是,解析查询字符串的能力是taken out of V4。您可以选择使用哪种方法。 第三方包:

const queryString = require('query-string');

const parsed = queryString.parse(props.location.search);

或者使用内置的:

const params = new URLSearchParams(props.location.search);

const foo = params.get('foo'); // bar

对于 URLSearchParams,还有一个polyfill 用于兼容性。

【讨论】:

    猜你喜欢
    • 2020-01-01
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 2017-11-12
    • 2016-09-15
    • 2021-05-20
    • 2017-01-22
    • 1970-01-01
    相关资源
    最近更新 更多