我喜歡 Ember.js 社群的這句話:
穩定而不停滯
通常你必須在穩定性和停滯之間做取捨:改進套件,但會破壞所有人的應用程式;或是保持 API 穩定,但永遠無法推出更優質的套件。
React Router v6 是我們目前最好的版本,這要歸功於 React Hooks:更好的組合性、更多功能、更簡單的 API 和更小的套件大小!然而,將一個成熟的應用程式從 v5 升級到 v6 **一次性** 完成,對你的專案來說太具破壞性了 😞。
這就是為什麼我們發布了一個用於 React Router DOM 的向後相容套件。它讓你可以將新的 v6 API 與現有的 v5 程式碼並行執行,使你能夠**逐步升級**。結果就是產生許多像這樣的小型提交:
+ import { useParams } from "react-router-dom-v5-compat";
function Project(props) {
- const { params } = props.match;
+ const { params } = useParams();
// ...
}
變更一行程式碼,提交,然後發布。重複直到完成。沒有長時間運行的升級分支;沒有巨大的時間投入。花一點時間在這個升級上,而不會干擾你路線圖上的功能開發(或成為團隊的合併衝突導師 😆)。
你的 v5 程式碼沒有任何變更(你甚至不需要更改 package.json 中的 react-router-dom 依賴項),因此你可以確信,你在逐步升級到 v6 API 時,不會意外破壞應用程式中的隨機畫面。
穩定而不停滯。讓我們知道你的進展如何!