From e506a343bca004d7ec9dbc3878def111b1b4522b Mon Sep 17 00:00:00 2001 From: zenn Date: Sun, 3 May 2026 10:18:22 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B2=8C=EC=8B=9C=EB=AC=BC=20=EB=AF=B8?= =?UTF-8?q?=EB=A6=AC=EB=B3=B4=EA=B8=B0=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/admin/AdminPostForm.vue | 17 +++++++++- docs/history.md | 8 +++++ docs/map.md | 3 +- docs/spec.md | 2 ++ docs/todo.md | 6 +--- docs/update.md | 8 +++++ package-lock.json | 4 +-- package.json | 2 +- pages/admin/posts/[id].vue | 16 ++++++++- pages/admin/posts/new.vue | 15 ++++++++- pages/admin/posts/preview.vue | 54 ++++++++++++++++++++++++++++++ 11 files changed, 123 insertions(+), 12 deletions(-) create mode 100644 pages/admin/posts/preview.vue diff --git a/components/admin/AdminPostForm.vue b/components/admin/AdminPostForm.vue index fc14722..54410b2 100644 --- a/components/admin/AdminPostForm.vue +++ b/components/admin/AdminPostForm.vue @@ -14,7 +14,7 @@ const props = defineProps({ } }) -const emit = defineEmits(['submit']) +const emit = defineEmits(['submit', 'preview']) const autosaveStoragePrefix = 'SORI_ADMIN_POST_AUTOSAVE' const slugTouched = ref(Boolean(props.initialPost.slug)) @@ -414,6 +414,14 @@ const submitPost = () => { emit('submit', createPostPayload()) } +/** + * 게시물 미리보기 요청 + * @returns {void} + */ +const previewPost = () => { + emit('preview', createPostPayload()) +} + watch(form, scheduleAutosave, { deep: true }) onMounted(() => { @@ -669,6 +677,13 @@ defineExpose({ 취소 +