2017-08-26 118 views
0

當我開始項目時我沒有與create-react-app配合 我構建了基本的react-flux應用程序,就像always和browserify和babelify一樣,所有的 和反應-router V4是工作,沒有發生問題react-router v4 NavLink不會改變URL

然後我移民到創造 - 反應 - 應用ENV 爲使用提供

測試和構建工具和我裝,我以前用的好好的 所有軟件包,但react-router v4出現問題

當我點擊NavLink,它不會改變URL 但是當我手動更改URL,它工作正常

我用BrowserRouter這樣的:

<BrowserRouter history={HashRouter}<App /></BrowserRouter>,document.getElementById("root")); 

而且NavLink這樣的:

<NavLink className="nav-link" activeClassName="active" to={"/drugs"}> 
          <i className="fa fa-medkit" aria-hidden="false"/> 
          &nbsp;Drugs 
         </NavLink> 

而路由器是這樣的:

<Switch> 
       <Route exact={true} path="/" component={Patients}/> 
       <Route exact path="/drugs" component={Drugs}/> 
       <Route exact path="/settings" component={Settings}/> 
       <Route path="*" component={Error}/> 
      </Switch> 

,並提前感謝。

回答

0

問題是<Navlink to={"/drugs"}。當您使用{}您表示您將使用JS,並且因爲"/drugs"無效,所以它失敗。

取而代之的是刪除{}。

<NavLink className="nav-link" activeClassName="active" to="/drugs"> 
+0

沒有奏效:\我嘗試過這一點,並再次 –

+0

嘗試了@JihadBadran是否安裝'反應,路由器dom'?或'react-router'直接? –

+0

我安裝了兩個,NavLink是在react-router-dom之後 –