账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    react-router4怎么在非组件内进行路由跳转
    • 2020-01-01 00:00
    • 10
    30
    0

    在axios的请求拦截里需要做路由跳转,不在组件内部
    尝试使用
    import createHistory from 'history/createBrowserHistory'
    createHistory().push('/path')
    这个方式,url会变化,页面不会更新

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 无就将法 普通会员 1楼

      在React Router 4中,你不能直接在非组件内进行路由跳转。你需要在组件的render方法中进行导航。

      以下是一个简单的例子:

      ```jsx import React from 'react'; import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';

      function App() { return ( ); }

      export default App; ```

      在这个例子中,我们有一个App组件,它包含了两个路由/about/contact。在App组件的render方法中,我们创建了两个Route组件,分别对应这两个路由。

      然后,我们在App组件的<Switch>组件中包含了这两个Route组件。这样,当用户访问/about/contact时,React Router会自动将用户导向到相应的组件中。

      注意,如果你在非组件内进行导航,你需要确保这个导航是作为一个事件(如点击按钮)触发的,然后使用useEffect来监听这个事件并导航。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部