From 3e1e4b0c1783abb7f4dc66f60ac846dacb15da03 Mon Sep 17 00:00:00 2001 From: anime Date: Thu, 2 Jan 2025 18:31:57 +0800 Subject: [PATCH] =?UTF-8?q?perf(SiteData=E7=AB=99=E7=82=B9=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=20=E8=BD=AC=E6=8D=A2=E4=BD=BF=E7=94=A8=E7=BC=93?= =?UTF-8?q?=E5=AD=98=E4=BC=98=E5=8C=96):=20=E5=A4=8D=E6=9D=82=E7=9A=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=BD=AC=E6=8D=A2=E5=87=BD=E6=95=B0=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E7=BC=93=E5=AD=98=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/db/getSiteData.js | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lib/db/getSiteData.js b/lib/db/getSiteData.js index f5e926c6..b898c32b 100755 --- a/lib/db/getSiteData.js +++ b/lib/db/getSiteData.js @@ -12,6 +12,7 @@ import { deepClone } from '@/lib/utils' import { idToUuid } from 'notion-utils' import { siteConfig } from '../config' import { extractLangId, extractLangPrefix, getShortId } from '../utils/pageId' +import { getOrSetDataWithCache } from '@/lib/cache/cache_manager' export { getAllTags } from '../notion/getAllTags' export { getPost } from '../notion/getNotionPost' @@ -66,13 +67,13 @@ export async function getGlobalData({ export async function getSiteDataByPageId({ pageId, from }) { // 获取NOTION原始数据,此接支持mem缓存。 const pageRecordMap = await getPage(pageId, from) - // 将Notion数据按规则转成站点数据 - const data = await converNotionToSiteDate( + return await getOrSetDataWithCache( + `site_data_${pageId}`, + converNotionToSiteDate, pageId, from, deepClone(pageRecordMap) ) - return data } /** @@ -264,11 +265,12 @@ async function converNotionToSiteDate(pageId, from, pageRecordMap) { categoryOptions: getCategoryOptions(schema) }) // 所有标签 - const tagOptions = getAllTags({ - allPages, - tagOptions: getTagOptions(schema), - NOTION_CONFIG - }) + const tagOptions = + getAllTags({ + allPages, + tagOptions: getTagOptions(schema), + NOTION_CONFIG + }) || null // 旧的菜单 const customNav = getCustomNav({ allPages: collectionData.filter(