實作 getStaticProps
我們需要獲取必要的資料來渲染帶有指定 id
的文章。
為此,請再次打開 lib/posts.js
並在底部添加以下 getPostData
函式。它會根據 id
返回文章資料:
接著,打開 pages/posts/[id].js
並將這行程式碼:
替換為以下程式碼:
現在文章頁面在 getStaticProps
中使用 getPostData
函式來獲取文章資料並將其作為 props 返回。
現在,讓我們更新 Post
元件以使用 postData
。在 pages/posts/[id].js
中,將導出的 Post
元件替換為以下程式碼:
就是這樣!嘗試訪問以下頁面:
您應該可以看到每個頁面的部落格資料:
太好了!我們已成功生成動態路由 (dynamic routes)。
遇到問題?
如果您遇到錯誤,請確認您的檔案有以下正確的程式碼:
如果您仍然卡住,歡迎在 GitHub Discussions 上向社群提問。如果您能將程式碼推送到 GitHub 並提供連結,其他人可以查看,這將會很有幫助。
總結
再次說明,以下是我們所做工作的圖形化總結:
我們還沒有顯示部落格的 markdown 內容。接下來讓我們來完成這部分。