index.vue 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <template>
  2. <div class="more-page">
  3. <div class="more-list">
  4. <div
  5. class="cell"
  6. v-for="(item, index) in moreTabList"
  7. :key="index"
  8. @click="moreItemHandle(item)"
  9. >
  10. <img class="icon" :src="item.icon" />
  11. <div class="info-wrapper">
  12. <div class="left">
  13. {{ item.label }}
  14. </div>
  15. <div class="right">
  16. <img
  17. class="icon"
  18. :src="require('@/assets/svg/icon-cell-arrow-right.svg')"
  19. />
  20. </div>
  21. </div>
  22. </div>
  23. </div>
  24. </div>
  25. </template>
  26. <script setup>
  27. import { ref } from "vue";
  28. let moreTabList = ref([
  29. {
  30. icon: require("@/assets/svg/icon-website.svg"),
  31. label: "Official Website",
  32. href: "https://denet.me",
  33. },
  34. {
  35. icon: require("@/assets/svg/icon-twitter.svg"),
  36. label: "Twitter",
  37. href: "https://twitter.com/denet2022",
  38. },
  39. {
  40. icon: require("@/assets/svg/icon-discord.svg"),
  41. label: "Discord",
  42. href: "https://discord.gg/wZSz9p8ddG",
  43. },
  44. {
  45. icon: require("@/assets/svg/icon-telegram.svg"),
  46. label: "Telegram",
  47. href: 'https://t.me/denetpro'
  48. }
  49. ]);
  50. const moreItemHandle = (params) => {
  51. window.open(params.href);
  52. };
  53. </script>
  54. <style scoped lang="scss">
  55. .more-page {
  56. background: #f6f6f6;
  57. width: 100%;
  58. height: 100%;
  59. overflow: auto;
  60. margin-top: 1px;
  61. .more-list {
  62. background: #fff;
  63. margin-top: 10px;
  64. .cell {
  65. cursor: pointer;
  66. display: flex;
  67. justify-content: space-between;
  68. align-items: center;
  69. height: 56px;
  70. box-sizing: border-box;
  71. padding: 0 16px;
  72. .icon {
  73. width: 40px;
  74. height: 40px;
  75. border-radius: 50%;
  76. }
  77. .info-wrapper {
  78. flex: 1;
  79. height: 100%;
  80. display: flex;
  81. justify-content: space-between;
  82. align-items: center;
  83. box-sizing: border-box;
  84. margin-left: 13px;
  85. .left {
  86. font-size: 14px;
  87. .time {
  88. color: #b0b0b0;
  89. }
  90. }
  91. .right {
  92. display: flex;
  93. align-items: center;
  94. cursor: pointer;
  95. .icon {
  96. width: 18px;
  97. height: 24px;
  98. }
  99. }
  100. }
  101. }
  102. }
  103. }
  104. </style>