我正在使用react-router并且我有一些嵌套的路由"/stories","/stories/:storyId"現在我的問題是我有一個單獨的故事組件,并使用這個特定storyId的來導航到"/stories/:storyId"單擊它以查看該故事詳細資訊的路線。問題來了,這個單個組件可以在另一條路線中呈現,"/bookmarks"如果我使用鉤子并在我單擊它導航到的組件時useNavigate傳遞它,我希望它去storyId"/bookmarks/:storyId""/stories/:storyId"
uj5u.com熱心網友回復:
在不同子路由上渲染的組件應該使用絕對鏈接路徑而不是相對路徑。相對路徑和絕對路徑之間的區別在于引導"/"字符。以 開頭的路徑是從托管應用程式的根目錄開始"/"的絕對路徑,而其他路徑則被視為相對于當前匹配路徑的相對路徑。
例如,而不是
<Link to={`../${storyId}`}>{storyId}</Link>
... or ...
<Link to={`${storyId}`}>{storyId}</Link>
... or ...
navigate(`../${storyId}`);
... or ...
navigate(`${storyId}`);
僅相對于當前路徑的兄弟或子路徑鏈接,使用絕對路徑
<Link to={`/stories/${storyId}`}>{storyId}</Link>
... or ...
navigate(`/stories/${storyId}`);
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/513828.html
