javascript - React 查询字符串采用超过 1 个参数?

标签 javascript reactjs url

我正在使用 React.js Router 并试图实现这一目标:

用户转到模块,然后转到级别,网址将如下所示: myapp.com/game/module/some-module/level/level-1。 我需要像这样处理所有不同的 modulelevel: /模块/:名称 /级别/:名称 所以我不需要多次指定每个网址。

这是App.js中的代码:

const App = () =>
    <Router>
        <Switch>
            <Route exact path="/" component={Home} />
            <Route exact path="/game" component={Game} />
            <Route exact path="/module/:name" component={Module} />
            <Route exact path="/level/:name" component={Level} />
            <Route component={NoMatch} />
        </Switch>
    </Router>

export default App

我知道我可以“抓取”子级中模块名称的值,如下所示:match.params.name

如何在 React 中做到这一点? 您还有比这更好的方法吗?

例如/game/some-module/some-level,这种情况下,如何在中传递模块名称关卡名称 >路线

最佳答案

看起来 Level 路由应该嵌套在 Module 组件内。

这是 Stack Overflow 上的类似讨论:Nested routes with react router v4

这里有一篇很好的博客文章,解释了嵌套路由在 React Router v4 中的工作原理:https://tylermcginnis.com/react-router-nested-routes/

关于javascript - React 查询字符串采用超过 1 个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52837172/

相关文章:

node.js - 尝试在服务器端捕获影响React中的错误处理

javascript - 通过 Javascript 将简单的 URL 变量传递到输入字段

react-native - 如何在 React Native for Android 上设置 keyboardType = "web-search"或 "url"?

javascript - typescript 从包含 url 的字符串中获取主机名、协议(protocol)、端口

reactjs - 如何使用 Typescript 创建 React 多态组件?

javascript - Cordova js 仅在特定设备上的 Android 上返回错误的日期时间和 utc

javascript - 我的谷歌放置了 kml url javascript

javascript - Angular 2 meteor InjectUser

javascript - 用于等待 useEffect 钩子(Hook)回调的自定义钩子(Hook)

javascript - 类型错误 : Cannot read property 'findAll' of undefined (expressjs)