index.vue 894 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <template>
  2. <div class="alarm-overlay">
  3. <Alarm
  4. v-if="pageType == 1"
  5. :data="alarmData"
  6. @close="$emit('close')"
  7. />
  8. <emergency
  9. v-if="pageType == 2"
  10. :data="alarmData"
  11. @close="$emit('close')"
  12. />
  13. </div>
  14. </template>
  15. <script>
  16. import Alarm from './alarm.vue'
  17. import emergency from './emergency.vue'
  18. export default {
  19. name: 'AlarmWindow',
  20. components: { Alarm,emergency },
  21. props: {
  22. alarmData: {
  23. type: Object,
  24. default: () => ({})
  25. }
  26. },
  27. data(){
  28. return{
  29. pageType:2,
  30. }
  31. },
  32. methods: {
  33. emergencyButton(val){
  34. this.$set(this,'pageType',val);
  35. },
  36. }
  37. }
  38. </script>
  39. <style lang="scss" scoped>
  40. .alarm-overlay {
  41. position: fixed;
  42. inset: 0;
  43. z-index: 9999;
  44. display: flex;
  45. align-items: center;
  46. justify-content: center;
  47. background: rgba(0, 0, 0, 0.75);
  48. backdrop-filter: blur(4px);
  49. }
  50. </style>