From 448cc75c68385573e22ad787f19240d753f4d99f Mon Sep 17 00:00:00 2001 From: rhlin Date: Tue, 21 Jan 2025 23:47:13 -0800 Subject: [PATCH 1/2] fix(plugins/materials): fix new app with no page should not set url page id to undefined --- .../materials/src/composable/useResource.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/plugins/materials/src/composable/useResource.js b/packages/plugins/materials/src/composable/useResource.js index a4febd8c6..ace4440af 100644 --- a/packages/plugins/materials/src/composable/useResource.js +++ b/packages/plugins/materials/src/composable/useResource.js @@ -38,12 +38,21 @@ const appSchemaState = reactive({ materialsDeps: { scripts: [], styles: new Set() } }) +function goPage(pageId) { + const url = new URL(window.location) + + url.searchParams.set('pageid', pageId) + window.history.pushState({}, '', url) + usePage().postLocationHistoryChanged({ pageId }) +} + const initPage = (pageInfo) => { try { if (pageInfo.meta) { const { occupier } = pageInfo.meta useLayout().layoutState.pageStatus = getCanvasStatus(occupier) + goPage(pageInfo.meta?.id) } else { useLayout().layoutState.pageStatus = { state: 'empty', @@ -54,12 +63,6 @@ const initPage = (pageInfo) => { pageInfo.id = pageInfo.meta?.id } catch (error) { console.log(error) // eslint-disable-line - } finally { - const url = new URL(window.location) - - url.searchParams.set('pageid', pageInfo.id) - window.history.pushState({}, '', url) - usePage().postLocationHistoryChanged({ pageId: pageInfo.id }) } const { id, meta, ...pageSchema } = pageInfo From 302e4c467330a89a2fb762c528f74753fa487288 Mon Sep 17 00:00:00 2001 From: rhlin Date: Wed, 22 Jan 2025 00:16:39 -0800 Subject: [PATCH 2/2] fix: validate pageId parameter for goPage function --- packages/plugins/materials/src/composable/useResource.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/plugins/materials/src/composable/useResource.js b/packages/plugins/materials/src/composable/useResource.js index ace4440af..2c7a2f43b 100644 --- a/packages/plugins/materials/src/composable/useResource.js +++ b/packages/plugins/materials/src/composable/useResource.js @@ -39,6 +39,10 @@ const appSchemaState = reactive({ }) function goPage(pageId) { + if (!pageId) { + return + } + const url = new URL(window.location) url.searchParams.set('pageid', pageId)