글쓰기 초안 저장 상태 보정
This commit is contained in:
@@ -720,9 +720,15 @@ const createPostPayload = (options = {}) => {
|
||||
|
||||
/**
|
||||
* 현재 게시물 입력값을 문자열로 직렬화한다.
|
||||
* @param {Object|null} [payload] - 직렬화할 게시물 입력값
|
||||
* @returns {string} 직렬화된 게시물 입력값
|
||||
*/
|
||||
const serializePostPayload = () => JSON.stringify(createPostPayload())
|
||||
const serializePostPayload = (payload = null) => {
|
||||
const sourcePayload = payload || createPostPayload()
|
||||
const { tagNames: _tagNames, ...comparablePayload } = sourcePayload
|
||||
|
||||
return JSON.stringify(comparablePayload)
|
||||
}
|
||||
|
||||
const hasUnsavedPostChanges = computed(() => serializePostPayload() !== savedPostSnapshot.value)
|
||||
|
||||
@@ -1560,7 +1566,7 @@ const unpublishModalKind = computed(() => (
|
||||
* @returns {void}
|
||||
*/
|
||||
const markSaved = (savedPayload = null) => {
|
||||
savedPostSnapshot.value = savedPayload ? JSON.stringify(savedPayload) : serializePostPayload()
|
||||
savedPostSnapshot.value = serializePostPayload(savedPayload)
|
||||
const publishedAt = resolvePayloadPublishedAt()
|
||||
|
||||
if (publishedAt) {
|
||||
@@ -1677,6 +1683,7 @@ onBeforeUnmount(() => {
|
||||
|
||||
defineExpose({
|
||||
clearAutosave: clearAutosaveLocal,
|
||||
createPostPayload,
|
||||
markSaved,
|
||||
allowNextRouteLeave,
|
||||
takePendingAutosavePayload
|
||||
|
||||
Reference in New Issue
Block a user