From 030ece7b409d5fc04a0ae74c8a8bc123cb9b7d9e Mon Sep 17 00:00:00 2001 From: Gene Date: Tue, 22 Apr 2025 19:16:59 +0800 Subject: [PATCH] fix: url unchanged after create block (#1323) --- mockServer/src/routes/main-routes.js | 4 ++-- mockServer/src/services/blockCategory.js | 8 +++++--- packages/plugins/block/src/SaveNewBlock.vue | 16 ++++++++-------- .../plugins/block/src/composable/useBlock.ts | 10 +++++++--- packages/plugins/block/src/js/blockSetting.tsx | 16 ++++++++++------ .../materials/src/composable/useResource.ts | 2 +- 6 files changed, 33 insertions(+), 23 deletions(-) diff --git a/mockServer/src/routes/main-routes.js b/mockServer/src/routes/main-routes.js index 06280c494..9c7d188e0 100644 --- a/mockServer/src/routes/main-routes.js +++ b/mockServer/src/routes/main-routes.js @@ -104,8 +104,8 @@ router.get('/material-center/api/blocks', async (ctx) => { }) router.post('/material-center/api/block/create', async (ctx) => { - const result = mockService.blockService.create(ctx.request.body) - const categoriesId = ctx.request.body.categories[0] + const result = await mockService.blockService.create(ctx.request.body) + const categoriesId = ctx.request.body.categories?.[0] || ctx.request.body.groups?.[0] const _id = result.id await mockService.blockCategoryService.update(categoriesId, { _id }) ctx.body = getResponseData(result) diff --git a/mockServer/src/services/blockCategory.js b/mockServer/src/services/blockCategory.js index 9f3f8ad7d..d15fb7953 100644 --- a/mockServer/src/services/blockCategory.js +++ b/mockServer/src/services/blockCategory.js @@ -47,9 +47,11 @@ export default class BlockCategoryService { async update(id, params) { if (params?._id) { const categories = await this.db.findOneAsync({ _id: id }) - categories.blocks.push(params._id) - await this.db.updateAsync({ _id: id }, { $set: categories }) - return getResponseData(categories) + if (categories) { + categories.blocks.push(params._id) + await this.db.updateAsync({ _id: id }, { $set: categories }) + return getResponseData(categories) + } } params.app = appinfo.app await this.db.updateAsync({ _id: id }, { $set: params }) diff --git a/packages/plugins/block/src/SaveNewBlock.vue b/packages/plugins/block/src/SaveNewBlock.vue index 10b8d9722..f580f7dbb 100644 --- a/packages/plugins/block/src/SaveNewBlock.vue +++ b/packages/plugins/block/src/SaveNewBlock.vue @@ -43,7 +43,7 @@