Files
admin-web/src/shared/components/OperationErrorToast.vue
T

25 lines
581 B
Vue
Raw Normal View History

2026-08-18 09:09:34 +08:00
<script setup lang="ts">
import { watch } from 'vue'
import { ElMessage } from 'element-plus'
import type { ApiErrorDetails } from '@/shared/api/http'
const props = withDefaults(defineProps<{
details?: ApiErrorDetails | null
message?: string | null
}>(), {
details: null,
message: null,
})
watch(
() => props.details?.message || props.message || '',
(message, previousMessage) => {
if (!message || message === previousMessage) return
ElMessage.error({ message, showClose: true, duration: 4500 })
},
{ immediate: true },
)
</script>
<template></template>