Preserve comment text on submission errors

This commit is contained in:
Tim
2025-08-06 19:28:57 +08:00
parent b9819252d3
commit fdf51be5f5
3 changed files with 9 additions and 5 deletions

View File

@@ -67,9 +67,11 @@ export default {
if (!vditorInstance.value || isDisabled.value) return
const value = vditorInstance.value.getValue()
console.debug('CommentEditor submit', value)
emit('submit', value)
vditorInstance.value.setValue('')
text.value = ''
emit('submit', value, () => {
if (!vditorInstance.value) return
vditorInstance.value.setValue('')
text.value = ''
})
}
onMounted(() => {

View File

@@ -157,7 +157,7 @@ const CommentItem = {
toast.error('操作失败')
}
}
const submitReply = async (text) => {
const submitReply = async (text, clear) => {
if (!text.trim()) return
isWaitingForReply.value = true
const token = getToken()
@@ -201,6 +201,7 @@ const CommentItem = {
src: data.author.avatar,
iconClick: () => router.push(`/users/${data.author.id}`)
})
clear()
showEditor.value = false
toast.success('回复成功')
} else if (res.status === 429) {

View File

@@ -364,7 +364,7 @@ export default {
}
}
const postComment = async (text) => {
const postComment = async (text, clear) => {
if (!text.trim()) return
console.debug('Posting comment', { postId, text })
isWaitingPostingComment.value = true
@@ -385,6 +385,7 @@ export default {
const data = await res.json()
console.debug('Post comment response data', data)
await fetchComments()
clear()
if (data.reward && data.reward > 0) {
toast.success(`评论成功,获得 ${data.reward} 经验值`)
} else {