|
1 | 1 | <script setup> |
| 2 | +import { ref, onUnmounted } from 'vue'; |
| 3 | +import { usePage, router } from '@inertiajs/vue3'; |
2 | 4 | import { Check, Info, TriangleAlert, CircleAlert, Megaphone } from 'lucide-vue-next'; |
| 5 | +
|
| 6 | +const page = usePage(); |
| 7 | +const requestsKey = ref(0); |
| 8 | +onUnmounted(router.on('finish', () => requestsKey.value++)); |
3 | 9 | </script> |
4 | 10 |
|
5 | 11 | <template> |
6 | | - <div class="m-0"> |
| 12 | + <div |
| 13 | + :key="requestsKey" |
| 14 | + class="m-0" |
| 15 | + > |
7 | 16 | <Message |
8 | | - v-if="$page.props.flash.success" |
| 17 | + v-if="page.props.flash.success" |
9 | 18 | class="mb-6" |
10 | 19 | severity="success" |
11 | 20 | closable |
12 | 21 | > |
13 | 22 | <template #icon> |
14 | 23 | <Check /> |
15 | 24 | </template> |
16 | | - {{ $page.props.flash.success }} |
| 25 | + {{ page.props.flash.success }} |
17 | 26 | </Message> |
18 | 27 | <Message |
19 | | - v-if="$page.props.flash.info" |
| 28 | + v-if="page.props.flash.info" |
20 | 29 | class="mb-6" |
21 | 30 | severity="info" |
22 | 31 | closable |
23 | 32 | > |
24 | 33 | <template #icon> |
25 | 34 | <Info /> |
26 | 35 | </template> |
27 | | - {{ $page.props.flash.info }} |
| 36 | + {{ page.props.flash.info }} |
28 | 37 | </Message> |
29 | 38 | <Message |
30 | | - v-if="$page.props.flash.warn" |
| 39 | + v-if="page.props.flash.warn" |
31 | 40 | class="mb-6" |
32 | 41 | severity="warn" |
33 | 42 | closable |
34 | 43 | > |
35 | 44 | <template #icon> |
36 | 45 | <TriangleAlert /> |
37 | 46 | </template> |
38 | | - {{ $page.props.flash.warn }} |
| 47 | + {{ page.props.flash.warn }} |
39 | 48 | </Message> |
40 | 49 | <Message |
41 | | - v-if="$page.props.flash.error" |
| 50 | + v-if="page.props.flash.error" |
42 | 51 | class="mb-6" |
43 | 52 | severity="error" |
44 | 53 | closable |
45 | 54 | > |
46 | 55 | <template #icon> |
47 | 56 | <CircleAlert /> |
48 | 57 | </template> |
49 | | - {{ $page.props.flash.error }} |
| 58 | + {{ page.props.flash.error }} |
50 | 59 | </Message> |
51 | 60 | <Message |
52 | | - v-if="$page.props.flash.message" |
| 61 | + v-if="page.props.flash.message" |
53 | 62 | class="mb-6" |
54 | 63 | severity="secondary" |
55 | 64 | closable |
56 | 65 | > |
57 | 66 | <template #icon> |
58 | 67 | <Megaphone /> |
59 | 68 | </template> |
60 | | - {{ $page.props.flash.message }} |
| 69 | + {{ page.props.flash.message }} |
61 | 70 | </Message> |
62 | 71 | </div> |
63 | 72 | </template> |
0 commit comments