diff --git a/siyuan/topbar.ts b/siyuan/topbar.ts index df47e3a3..181e1d8a 100644 --- a/siyuan/topbar.ts +++ b/siyuan/topbar.ts @@ -74,7 +74,7 @@ export class Topbar { const dynJsonCfg = setting[DYNAMIC_CONFIG_KEY] as any this.logger.info("dynJsonCfg =>", dynJsonCfg.totalCfg) // 构造发布菜单 - dynJsonCfg.totalCfg.forEach((config: any) => { + dynJsonCfg.totalCfg?.forEach((config: any) => { let icon = `${config.platformIcon}` // 修复图片不展示问题 if (/^\ -1) { diff --git a/src/components/publish/form/PublishPlatform.vue b/src/components/publish/form/PublishPlatform.vue index 2a352e89..ba2d1ea1 100644 --- a/src/components/publish/form/PublishPlatform.vue +++ b/src/components/publish/form/PublishPlatform.vue @@ -64,7 +64,7 @@ if (emit) { const handleCheck = (key: string) => { if (formData.selectedKeys.includes(key)) { // 如果 formData.selectedKeys 数组中包含 key,则从数组中删除 key - formData.selectedKeys = formData.selectedKeys.filter((item: string) => item !== key) + formData.selectedKeys = formData.selectedKeys?.filter((item: string) => item !== key)??[] } else { // 如果 formData.selectedKeys 数组中不包含 key,则将其添加到数组中 formData.selectedKeys.push(key) @@ -80,7 +80,7 @@ onMounted(async () => { const setting = await getSetting() const dynJsonCfg = JsonUtil.safeParse(setting[DYNAMIC_CONFIG_KEY], {} as DynamicJsonCfg) // 过滤出已启用并且配置可用的平台 - const enabledConfigs = dynJsonCfg?.totalCfg.filter( + const enabledConfigs = dynJsonCfg.totalCfg?.filter( (config: DynamicConfig) => config.isEnabled === true && config.isAuth === true ) // 默认展示通用平台