手順
6
: データ取得処理を書き換え
lib/portfolio.ts を編集:
function formatNotionItem(item: any): PortfolioItem {
const p = item.properties;
return {
id: item.id,
title: p.Name?.title?.[0]?.plain_text || "",
description: p.説明?.rich_text?.[0]?.plain_text || "",
category: p.カテゴリ?.select?.name || "",
url: p["userDefined:URL"]?.url || p.URL?.url || "",
createdAt: p.作成日?.date?.start || "",
thumbnail: p.サムネイル?.files?.[0]?.file?.url || "",
};
}
Notion APIのレスポンスはネストが深いので、フラットに整形するのがポイント