每當出現一個新內容的時候,我們都要比較新版本和老版本的區別在哪里,有助於學習和了解
下面小編總結一下V3和V4的區別
一、V3或者說V早期版本是把router 和 layout components 分開
那么在V4中是怎么樣的呢
①集中式 router
②通過 <Route> 嵌套,實現 Layout 和 page 嵌套
③Layout 和 page 組件 是作為 router 的一部分
二、在V3中,我們是將整個龐大的router直接丟給Dom
在V4中,除了BrowserRouter,我們丟給DOM的我們的程序本身
另外,V4 中,我們不再使用 {props.children} 來嵌套組件了,替代的 <Route>,當 route 匹配時,子組件會被渲染到 <Route> 書寫的地方
四、在V3 中的 routing 規則是 exclusive,意思就是最終只獲取一個 route
而 V4 中的 routes 默認是 inclusive 的,這就意味着多個 <Route>可以同時匹配和呈現
如果只想匹配一個路由,可以使用Switch,在 <Switch> 中只有一個 <Route> 會被渲染,同時可以再在每個路由添加exact,做到精准匹配
Redirect,瀏覽器重定向,當多有都不匹配的時候,進行匹配