1、對于element-ui的el-input元素,回車發(fā)送消息事件,
?<el-input? ref="textarea"? placeholder="請輸入內(nèi)容"? v-model="textarea" @keyup.enter.native="enterMsg($event)" ></el-input>
?enterMsg(event)?{
???????if?(event.keyCode?===?13)?{????//回車事件
?????????this.$refs.textarea.select();?//輸入框選中狀態(tài)
????????this.setButton();?//?發(fā)送文本,調(diào)用后臺接口方法
????????event.preventDefault();?//?阻止瀏覽器默認(rèn)換行操作
????????return?false;
??????}
????},
2、vue--在線聊天功能,判斷消息是否是文字或表情
文本框:文字--“你好”? ||? 表情--“[齜牙]”
調(diào)用騰訊云發(fā)送文本信息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循環(huán)中的某一項item添加樣式。
<div?v-for="(item,?index)?in List"?:key="index"?@click="setMsg(item)"?:class="index?==?0???'clickNow':'?'"></div>
.clickNow{background:red}就可以解決了。