index.vue 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <template>
  2. <div>
  3. <chat-at
  4. ref="chatAt"
  5. v-if="atShow"
  6. @atperson="atPerson"
  7. :curInd="atInd"
  8. :filterList="filterMembers">
  9. </chat-at>
  10. <div class="input-con">
  11. <div class="more-icon" @click.stop="handleMoreClick"></div>
  12. <form class="input-wrap" @submit="handleSend">
  13. <textarea
  14. @keydown.up="handleUp"
  15. @keydown.down="handleDown"
  16. @keydown.left="handleLeft"
  17. @keydown.right="handleRight"
  18. @keydown.delete="handleDel"
  19. @keydown.esc="handleEsc"
  20. cols="1"
  21. ref="chatInput"
  22. rows="1"
  23. @keydown.enter="handleKeyDown"
  24. placeholder="Write a message"
  25. v-model="inputMsg"
  26. @focus="handleFocus"
  27. @blur="handleBlur"
  28. :style="{height:inputHeight}"
  29. />
  30. </form>
  31. <div class="emoji-icon" @click.stop="handleEmojiClick"></div>
  32. <div class="btn-send" @click="handleSend">{{$t('chat.send')}}</div>
  33. </div>
  34. <toolbar ref="toolbar" :toolShow="toolShow" @handleFile="handleFile"></toolbar>
  35. <emoji-list @addEmoji="addEmoji" :emojiShow="emojiShow" v-show="emojiShow" @closeEmojiList="closeEmojiList"></emoji-list>
  36. </div>
  37. </template>