2021-06-03

1、对于element-ui的el-input元素,回车发送消息事件,

 <el-input  ref="textarea"  placeholder="请输入内容"  v-model="textarea" @keyup.enter.native="enterMsg($event)" ></el-input>

 enterMsg(event) {

       if (event.keyCode === 13) {    //回车事件

         this.$refs.textarea.select(); //输入框选中状态

        this.setButton(); // 发送文本,调用后台接口方法

        event.preventDefault(); // 阻止浏览器默认换行操作

        return false;

      }

    },

2、vue--在线聊天功能,判断消息是否是文字或表情

文本框:文字--“你好”  ||  表情--“[龇牙]”

调用腾讯云发送文本信息createTextMessage

接收消息: <div  v-if="item.chatElement == 'TIMTextElem'"  v-html="emj(item.chatContent)" ></div>

emj(value){

if(value.indexOf('[')){return value}//返回消息为文字

else{//返回消息为表情

       let emImg;

        for (let key in emojiMap) {

          emImg = emojiUrl + emojiMap[key];

          while (value.indexOf(key) != "-1") {

            value= value.replace(

              key,

              `<img style='width:25px;' src=${emImg}>`

            );

          }

        }

        return value;

}

3、div--for循环中的某一项item添加样式。

<div v-for="(item, index) in List" :key="index" @click="setMsg(item)" :class="index == 0 ? 'clickNow':' '"></div>

.clickNow{background:red}就可以解决了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容