index.vue 868 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <template>
  2. <view>
  3. <scroll-view scroll-y="true" class="scroll-emoji-box">
  4. <view
  5. class="emoji-item"
  6. v-for="(item, index) in emoji.emojis"
  7. :key="index"
  8. @click="handleClick(item)"
  9. >{{ item }}</view
  10. >
  11. </scroll-view>
  12. </view>
  13. </template>
  14. <script>
  15. import { emoji } from '@/constant';
  16. export default {
  17. data() {
  18. return {
  19. emoji,
  20. };
  21. },
  22. methods: {
  23. handleClick(emoji) {
  24. this.$emit('appendEmojiIcon', emoji);
  25. },
  26. },
  27. };
  28. </script>
  29. <style scoped>
  30. .scroll-emoji-box {
  31. height: 200px;
  32. width: 100%;
  33. display: flex;
  34. flex-direction: row;
  35. flex-wrap: wrap;
  36. justify-content: space-between;
  37. align-items: center;
  38. }
  39. .emoji-item {
  40. width: 10%;
  41. height: 37px;
  42. font-size: 26px;
  43. display: inline-block;
  44. text-align: center;
  45. line-height: 36px;
  46. box-sizing: border-box;
  47. }
  48. </style>