header.vue 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <template>
  2. <div class="bgk1">
  3. <div class="d-flex jc-center title_wrap">
  4. <div class="timers">
  5. <span>{{headername }}</span>
  6. <div class="headertime">
  7. <p class="datayear">{{ headertime.dateYear }}</p>
  8. <p class="dateday" >{{ headertime.dateDay }}</p>
  9. </div>
  10. </div>
  11. <div class="titlebtn titleanniu imgtupian" :class="{headeractive: headeractive === '1'}" @click="handleSelect('1')">突水推演</div>
  12. <div class="titlebtn titleanniu imgtupian" style="margin-right: 20px;" :class="{headeractive: headeractive === '2'}" @click="handleSelect('2')">火灾推演</div>
  13. <div class="d-flex jc-center s-content">
  14. <div class="title tiletimg">
  15. <div class="ve_logo_img">
  16. <el-image style="height: 100%" :src="logo" fit="contain"></el-image>
  17. </div>
  18. <span class="title-text">煤矿多种态势推演可视化和智慧应急与救援模型定制开发系统</span>
  19. <!-- <span class="title-text">煤矿典型灾害态势推演</span> -->
  20. </div>
  21. </div>
  22. <div class="titlebtn titleanniu imgtupian2" :class="{headeractive2: headeractive === '3'}" @click="handleSelect('3')" >瓦斯爆炸推演</div>
  23. <div class="titlebtn titleanniu imgtupian2" :class="{headeractive2: headeractive === '4'}" @click="handleSelect('4')" >模型库</div>
  24. </div>
  25. </div>
  26. </template>
  27. <script setup>
  28. import { ref, onMounted, reactive, } from "vue";
  29. import {RouterView,RouterLink } from "vue-router"
  30. import { request, uploadFile } from "@/utils/request";
  31. import logo from "@/assets/logo.png";
  32. import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
  33. import { timestampToTime,formatTime } from "@/js/lindex.js";
  34. let emit = defineEmits(['handleSelect'])
  35. let headername=ref();
  36. const props = defineProps({
  37. name:{
  38. type:String
  39. },
  40. });
  41. let headeractive=ref(0);
  42. let headerobj = ref({
  43. time: "",
  44. name: "",
  45. });
  46. let headertime=ref({
  47. timing: null,
  48. loading: true,
  49. dateDay: null,
  50. dateYear: null,
  51. dateWeek: null,
  52. weekday: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],
  53. })
  54. let headerid=ref();
  55. onMounted(() => {
  56. timeFn();
  57. });
  58. // 当前时间
  59. const timeFn=()=> {
  60. headertime.value.timing = setInterval(() => {
  61. headertime.value.dateDay = formatTime(new Date(), "HH: mm: ss");
  62. headertime.value.dateYear = formatTime(new Date(), "yyyy-MM-dd");
  63. headertime.value.dateWeek = headertime.value.weekday[new Date().getDay()];
  64. }, 1000);
  65. }
  66. const handleSelect = (key) => {
  67. headerid.value=key;
  68. headeractive.value= headerid.value;
  69. emit('handleSelect', key);
  70. headername.value="";
  71. };
  72. const hname=(val)=>{
  73. headername.value=val// 获取项目名称
  74. }
  75. defineExpose({headeractive,hname});
  76. </script>
  77. <style lang="scss" scoped>
  78. .headeractive{
  79. background-image: url('/src/assets/img/Rectangle4562.png') !important;
  80. }
  81. .headeractive2{
  82. background-image: url('/src/assets/img/Rectangle45622.png') !important;
  83. background-size: 100%;
  84. }
  85. </style>