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
)
// 默认展示通用平台