更改路径名后重新渲染组件

时间:2020-06-11 11:23:11

标签: reactjs react-router

我没什么问题 我的组件没有在更改路径名时重新呈现,我尝试了一切,但仍然无法在这里正常工作,是useEffect func

useEffect(() => {
    var user=window.location.pathname.replace('/user/','');
    axios.defaults.baseURL = 'http://rating.test';
 axios.get('/api/getuser',{headers: { Authorization: `Bearer ${localStorage.getItem('userToken')}` },params:{username: user,}}).then(res=>{
      setposts(res.data.posts);
      setuser({id:res.data.id,username:res.data.username});
  })


 },[window.location.pathname])

我正在使用React Router btw

编辑:我的路由器

    <Router>
   <MyHeader />
<Switch>
<Route exact path="/" component={Login}/>
<Route path="/main" >
  <Main/>
</Route>
<Route path="/myposts" >
  <Profile/>
</Route>
<Route path="/user/:id" >
  <User />
</Route>

0 个答案:

没有答案