From a5ee8f059c9da25b2668a1fe89fcedaf28dc39a0 Mon Sep 17 00:00:00 2001 From: tangly1024 Date: Tue, 19 Nov 2024 21:01:38 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E8=AF=BB=E5=8F=96=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/config.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/config.js b/lib/config.js index 6985b320edf..7457ac3a3ae 100644 --- a/lib/config.js +++ b/lib/config.js @@ -4,6 +4,9 @@ import BLOG from '@/blog.config' import { useGlobal } from './global' import { deepClone, isUrl } from './utils' +const getValue = (value, fallback) => (hasVal(value) ? fallback : value) +const hasVal = value => value !== undefined && value !== null + /** * 读取配置顺序 * 1. 优先读取NotionConfig表 @@ -35,7 +38,9 @@ export const siteConfig = (key, defaultVal = null, extendConfig = {}) => { case 'IS_TAG_COLOR_DISTINGUISHED': case 'TAG_SORT_BY_COUNT': case 'LINK': - return convertVal(extendConfig[key] || defaultVal || BLOG[key]) + return convertVal( + getValue(extendConfig[key], getValue(defaultVal, BLOG[key])) + ) default: } @@ -79,16 +84,16 @@ export const siteConfig = (key, defaultVal = null, extendConfig = {}) => { } // 其次 有传入的extendConfig,则尝试读取 - if (!val && extendConfig) { + if (!hasVal(val) && extendConfig) { val = extendConfig[key] } // 其次 NOTION没有找到配置,则会读取blog.config.js文件 - if (!val) { + if (!hasVal(val)) { val = BLOG[key] } - if (!val) { + if (!hasVal(val)) { return defaultVal } From 9690d06fbdad8d3938f39792df03b73416332bca Mon Sep 17 00:00:00 2001 From: tangly1024 Date: Tue, 19 Nov 2024 21:25:01 +0800 Subject: [PATCH 2/2] fix --- lib/config.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/config.js b/lib/config.js index 7457ac3a3ae..be7815b70b0 100644 --- a/lib/config.js +++ b/lib/config.js @@ -4,9 +4,6 @@ import BLOG from '@/blog.config' import { useGlobal } from './global' import { deepClone, isUrl } from './utils' -const getValue = (value, fallback) => (hasVal(value) ? fallback : value) -const hasVal = value => value !== undefined && value !== null - /** * 读取配置顺序 * 1. 优先读取NotionConfig表 @@ -21,6 +18,8 @@ export const siteConfig = (key, defaultVal = null, extendConfig = {}) => { if (!key) { return null } + const getValue = (value, fallback) => (hasVal(value) ? value : fallback) + const hasVal = value => value !== undefined && value !== null // 特殊配置处理;以下配置只在服务端生效;而Global的NOTION_CONFIG仅限前端组件使用,因此需要从extendConfig中读取 switch (key) {