当前位置: 首页 > 面试题库 >

使用React Router和Router

皇甫夕
2023-03-14
问题内容

使用 withRouter() 时如何获取路由上下文,位置,参数等?

import { withRouter } from 'react-router';

const SomeComponent = ({location, route, params}) => (
    <h1>The current location is {location.pathname}</h1>
);

const ComposedWithRouter = withRouter(SomeComponent);

您可以使用withRouter获得该信息,还是必须将这些内容显式传递到组件树中?


问题答案:

因此,不再使用context。在道具中都可以使用:

SomeComponent.propTypes = {
  location: React.PropTypes.shape({
    pathname: React.PropTypes.string,
    query: React.PropTypes.shape({
      ...
    })
  }),
  params: React.PropTypes.shape({
    ...
  }),
  router: React.PropTypes.object
}

const ComposedWithRouter = withRouter(SomeComponent);

因此,假设SomeComponent您想将用户转到新路线,您只需this.props.router.push('someRoute')



 类似资料:
  • 问题内容: React Router v4 组件非常适合用于保护导航免受部分填写的表单影响的用例。 但是,如果我们想提供自己的逻辑来代替该组件使用的默认浏览器,该怎么办?React是用于创建UI的,因此这似乎是一个非常合理的用例。在github上浏览Prompt上的问题,我没有发现有人问这个问题。 有谁知道提供警报自定义行为的解决方案? 问题答案: 尽管可以在阻止通过链接在页面之间导航的同时使用自

  • 想实现先请求接口然后再生成路由改如何做到?(下面代码试了几次都不行)

  • 场景是:在移动端页面浏览到很下面,然后点击进入下一个页面,点返回的时候依然在刚才的位置而不是重新刷新页面

  • 使用 Vuex 和 vue-router 使用 Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理工具库,可以利用 Vue.js 的细粒度数据响应机制来进行高效的状态更新。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 由于在 Vuex 本身就是平台无关的,有较强的移植能力,完全可以在 Weex 中正常地使用 Vuex。 Vuex 也

  • 我正在学习Spring Boot,并试图实现身份验证。我有一个注册页面,它使用POST方法发送新用户数据以存储在内存数据库中。奇怪的是,当我提交表单时,GET方法是唯一被调用的方法。这是我的超文本标记语言文件: 如您所见,表单上有< code>method="POST"属性。 这是我的注册控制器: 我已经将放在@GetMap()方法中,即使我点击注册表单上的提交按钮,也可以在我的服务器上看到该方法

  • 问题内容: 我想在其他线程不再引用它时正确关闭Closeable对象。 我写了一些小测试,但是将对象加入队列后,get方法返回null,即poll方法返回没有引用的正确Object。 提前致谢。任何帮助将不胜感激。 问题答案: 首先,如果仅是关闭,请使用。接下来,从参考队列中,不保证您将获得参考。并且您将永远不会找回实际的对象(参考对象)。 如果要确保已关闭,则必须自己跟踪它们。然后,当您使用参考