commessIndex.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <template>
  2. <el-row class="main animate__animated animate__backInRight">
  3. <el-col :span="24" class="info">
  4. <el-col :span="24" class="top">
  5. <dividerIndex :info="{ title: '企业信息', enTitle: 'Information' }" />
  6. </el-col>
  7. <el-col :span="24" class="infoList">
  8. <el-col
  9. :span="6"
  10. class="list"
  11. v-for="(item, index) in list"
  12. :key="index"
  13. @click="toOpen(item.to)"
  14. >
  15. <el-col :span="24" class="imgs">
  16. <el-image class="images" :src="item.url"></el-image>
  17. </el-col>
  18. <el-col :span="24" class="title">{{ item.title }}</el-col>
  19. </el-col>
  20. </el-col>
  21. </el-col>
  22. </el-row>
  23. </template>
  24. <script setup lang="ts">
  25. // 基础
  26. import { ref } from 'vue'
  27. import dividerIndex from '../../../components/windows/dividerIndex.vue'
  28. // eslint-disable-next-line @typescript-eslint/no-explicit-any
  29. const list = ref<any[]>([
  30. {
  31. url: 'commess1.png',
  32. title: '机构设置',
  33. to: '/messDetail?tag=1&type=info',
  34. },
  35. {
  36. url: 'commess2.png',
  37. title: '政策法规',
  38. to: '/newsIndex?tag=2',
  39. },
  40. {
  41. url: 'commess3.png',
  42. title: '排水公司信息公开',
  43. to: '/messDetail?tag=3&type=info',
  44. },
  45. {
  46. url: 'commess4.png',
  47. title: '水厂环境信息公开',
  48. to: '/messDetail?tag=4&type=info',
  49. },
  50. {
  51. url: 'commess5.png',
  52. title: '行业自律',
  53. to: '/messDetail?tag=5&type=info',
  54. },
  55. {
  56. url: 'commess6.png',
  57. title: '长春水务集团2018年政府信息公开',
  58. to: '/messDetail?tag=6&type=info',
  59. },
  60. {
  61. url: 'commess7.png',
  62. title: '长春水务集团2019年工作',
  63. to: '/messDetail?tag=7&type=info',
  64. },
  65. {
  66. url: 'commess8.png',
  67. title: '智慧水务(互联网+供水服务)',
  68. to: '/messDetail?tag=8&type=info',
  69. },
  70. ])
  71. const toOpen = (path: string) => {
  72. window.open(`${path}`)
  73. }
  74. </script>
  75. <style scoped lang="scss">
  76. .main {
  77. padding: 0 17%;
  78. .top {
  79. margin: 40px 0;
  80. }
  81. .infoList {
  82. display: flex;
  83. flex-wrap: wrap;
  84. justify-content: space-between;
  85. gap: 27px;
  86. .list {
  87. max-width: 22.3%;
  88. border-radius: 0px 0px 4px 4px;
  89. /* 灰 */
  90. box-shadow: 2px 4px 20px 0px rgba(169, 169, 169, 0.25);
  91. background: rgb(255, 255, 255);
  92. .imgs {
  93. border-radius: 5px;
  94. .images {
  95. border-radius: 5px;
  96. }
  97. }
  98. .title {
  99. padding: 5px 0;
  100. text-align: center;
  101. color: rgb(25, 25, 26);
  102. // font-family: '黑体';
  103. font-size: 18px;
  104. font-weight: 500;
  105. line-height: 29px;
  106. letter-spacing: 0px;
  107. }
  108. }
  109. }
  110. }
  111. </style>