feat(toast): 添加一键打开所有 Toast 消息功能并优化显示时间
Some checks failed
CI/CD Pipeline / playwright (push) Successful in 4m6s
CI/CD Pipeline / build-and-deploy (push) Successful in 4m22s
测试最新依赖 / playwright (push) Successful in 1m50s
测试最新依赖 / build-and-test (push) Failing after 2m24s

This commit is contained in:
严浩
2025-10-29 00:13:08 +08:00
parent c490cb1c8e
commit b0b65b454c
3 changed files with 30 additions and 12 deletions

View File

@@ -4,6 +4,29 @@ import type { ToastMessageOptions } from 'primevue/toast';
definePage({
meta: {},
});
const tostSeverities = [
'secondary',
'success',
'info' /* 默认 */,
'warn',
'error',
'contrast',
undefined,
] satisfies ToastMessageOptions['severity'][];
const openAllToasts = () => {
tostSeverities.forEach((severity, index) => {
setTimeout(() => {
ToastService.add({
severity,
summary: `severity: ${severity ?? 'default'}`,
life: 3000,
detail: `${index + 1}. 消息内容`,
});
}, index * 500);
});
};
</script>
<template>
@@ -16,27 +39,20 @@ definePage({
<Panel header="Toast 消息" class="mt-1.5">
<div flex="~ wrap" gap="4">
<Button
v-for="severity in [
'secondary',
'success',
'info',
'warn',
'error',
'contrast',
undefined,
] satisfies ToastMessageOptions['severity'][]"
v-for="(severity, index) in tostSeverities"
:key="severity ?? 'default'"
@click="
ToastService.add({
severity: severity,
summary: `severity: ${severity ?? 'default'}`,
life: 5000,
life: 3000,
detail: '消息内容',
})
"
>
{{ `${severity ?? 'default'}` }}
{{ `${index + 1}. ${severity ?? 'default'}` }}
</Button>
<Button @click="openAllToasts"> 一键打开所有 </Button>
</div>
</Panel>
</template>