emoji.vue 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <template>
  2. <div class="chat-emoji">
  3. <div class="scroller">
  4. <div class="block" v-for="(item, index) in list" :key="index" @click="select(item)">
  5. <img :src="item" />
  6. </div>
  7. </div>
  8. </div>
  9. </template>
  10. <script>
  11. let emoji = {
  12. url: "https://cool-comm.oss-cn-shenzhen.aliyuncs.com/show/imgs/chat/",
  13. list: [
  14. "angry-face.png",
  15. "anguished-face.png",
  16. "astonished-face.png",
  17. "confounded-face.png",
  18. "confused-face.png",
  19. "crying-face.png",
  20. "disappointed-but-relieved-face.png",
  21. "disappointed-face.png",
  22. "dizzy-face.png",
  23. "drooling-face.png",
  24. "expressionless-face.png",
  25. "face-savouring-delicious-food.png",
  26. "face-screaming-in-fear.png",
  27. "face-throwing-a-kiss.png",
  28. "face-with-cold-sweat.png",
  29. "face-with-cowboy-hat.png",
  30. "face-with-finger-covering-closed-lips.png",
  31. "face-with-head-bandage.png",
  32. "face-with-look-of-triumph.png",
  33. "face-with-medical-mask.png",
  34. "face-with-monocle.png",
  35. "face-with-one-eyebrow-raised.png",
  36. "face-with-open-mouth-and-cold-sweat.png",
  37. "face-with-open-mouth-vomiting.png",
  38. "face-with-open-mouth.png",
  39. "face-with-party-horn-and-party-hat.png",
  40. "face-with-pleading-eyes.png",
  41. "face-with-rolling-eyes.png",
  42. "face-with-stuck-out-tongue-and-tightly-closed-eyes.png",
  43. "face-with-stuck-out-tongue-and-winking-eye.png",
  44. "face-with-stuck-out-tongue.png",
  45. "face-with-thermometer.png",
  46. "face-with-uneven-eyes-and-wavy-mouth.png",
  47. "face-without-mouth.png",
  48. "fearful-face.png",
  49. "flushed-face.png",
  50. "freezing-face.png",
  51. "frowning-face-with-open-mouth.png",
  52. "grimacing-face.png",
  53. "grinning-face-with-one-large-and-one-small-eye.png",
  54. "grinning-face-with-smiling-eyes.png",
  55. "grinning-face-with-star-eyes.png",
  56. "grinning-face.png",
  57. "hugging-face.png",
  58. "hushed-face.png",
  59. "imp.png",
  60. "kissing-face-with-closed-eyes.png",
  61. "kissing-face-with-smiling-eyes.png",
  62. "kissing-face.png",
  63. "loudly-crying-face.png",
  64. "lying-face.png",
  65. "money-mouth-face.png",
  66. "nauseated-face.png",
  67. "nerd-face.png",
  68. "neutral-face.png",
  69. "overheated-face.png",
  70. "pensive-face.png",
  71. "persevering-face.png",
  72. "pouting-face.png",
  73. "relieved-face.png",
  74. "rolling-on-the-floor-laughing.png",
  75. "serious-face-with-symbols-covering-mouth.png",
  76. "shocked-face-with-exploding-head.png",
  77. "sleeping-face.png",
  78. "sleepy-face.png",
  79. "slightly-frowning-face.png",
  80. "slightly-smiling-face.png",
  81. "smiling-face-with-halo.png",
  82. "smiling-face-with-heart-shaped-eyes.png",
  83. "smiling-face-with-horns.png",
  84. "smiling-face-with-open-mouth-and-smiling-eyes.png",
  85. "smiling-face-with-open-mouth-and-tightly-closed-eyes.png",
  86. "smiling-face-with-open-mouth.png",
  87. "smiling-face-with-smiling-eyes-and-hand-covering-mouth.png",
  88. "smiling-face-with-smiling-eyes-and-three-hearts.png",
  89. "smiling-face-with-smiling-eyes.png",
  90. "smiling-face-with-sunglasses.png",
  91. "smirking-face.png",
  92. "sneezing-face.png",
  93. "thinking-face.png",
  94. "tired-face.png",
  95. "upside-down-face.png",
  96. "weary-face.png",
  97. "white-frowning-face.png",
  98. "white-smiling-face.png",
  99. "winking-face.png",
  100. "worried-face.png",
  101. "zipper-mouth-face.png"
  102. ]
  103. };
  104. emoji.list = emoji.list.map((e) => emoji.url + e);
  105. export default {
  106. data() {
  107. return {
  108. list: emoji.list
  109. };
  110. },
  111. methods: {
  112. close() {},
  113. select(e) {
  114. this.$emit("select", e);
  115. }
  116. }
  117. };
  118. </script>
  119. <style lang="scss" scoped>
  120. .chat-emoji {
  121. height: 250px;
  122. box-sizing: border-box;
  123. .scroller {
  124. display: flex;
  125. flex-wrap: wrap;
  126. height: 100%;
  127. overflow: auto;
  128. .block {
  129. display: flex;
  130. justify-content: center;
  131. align-items: center;
  132. height: 50px;
  133. width: 50px;
  134. cursor: pointer;
  135. &:hover,
  136. &:active {
  137. background-color: #f7f7f7;
  138. }
  139. img {
  140. display: inline-block;
  141. height: 25px;
  142. width: 25px;
  143. }
  144. }
  145. }
  146. }
  147. </style>