我对路由有问题:
ReactDOM.render((
<BrowserRouter>
<div>
<Route exact path="/" component={App} />
<Route exact path="/dodajpost" component={addPost} />
<Route path="/:id" component={App}/>
</div>
</BrowserRouter>
), document.getElementById('root'));
当我要/dodajpost
它不会渲染addPost
组件时,/:id
在/dodajpost
上
。是否可以对/dodajpost
给予更高的优先级?或者也许有不同的方法可以修复它。
我建议您执行以下操作:
-
首先,使用
<Switch>
,它不是分组<Route>
但当多个路由的路径匹配相同的路径名时,它可能非常有用。 -
关于优先级,
<Switch>
仅呈现与当前位置匹配的第一个 -
检查您当前的位置是否与
'/dodajpost'
完全匹配 -
而不是
addPost
使用AddPost
,这是组件以大写字母开头的约定
这样做,然后再试一次!
希望对你有帮助
你能试试这个吗
ReactDOM.render((
<BrowserRouter>
<div>
<Route path="/" component={App} />
<Route exact path="/dodajpost" component={addPost} />
<Route exact path="/:id" component={App}/>
</div>
</BrowserRouter>
), document.getElementById('root'));