vue使用微信表情

在main.js中寫

function toEmotion(text, isNoGif){
   var list = ['微笑', '撇嘴', '色', '發呆', '得意', '流淚', '害羞', '閉嘴', '睡', '大哭', '尷尬', '發怒', '調皮', '呲牙', '驚訝', '難過', '酷', '冷汗', '抓狂', '吐', '偷笑', '愉快', '白眼', '傲慢', '飢餓', '困', '驚恐', '流汗', '憨笑', '大兵', '奮鬥', '咒罵', '疑問', '噓', '暈', '折磨', '衰', '骷髏', '敲打', '再見', '擦汗', '摳鼻', '鼓掌', '糗大了', '壞笑', '左哼哼', '右哼哼', '哈欠', '鄙視', '委屈', '快哭了', '陰險', '親親', '嚇', '可憐', '菜刀', '西瓜', '啤酒', '籃球', '乒乓', '咖啡', '飯', '豬頭', '玫瑰', '凋謝', '示愛', '愛心', '心碎', '蛋糕', '閃電', '炸彈', '刀', '足球', '瓢蟲', '便便', '月亮', '太陽', '禮物', '擁抱', '強', '弱', '握手', '勝利', '抱拳', '勾引', '拳頭', '差勁', '愛你', 'NO', 'OK', '愛情', '飛吻', '跳跳', '發抖', '慪火', '轉圈', '磕頭', '回頭', '跳繩', '揮手', '激動', '街舞', '獻吻', '左太極', '右太極', '嘿哈', '捂臉', '奸笑', '機智', '皺眉', '耶', '紅包', '雞'];

   if (!text) {
       return text;
   }

   text = text.replace(/\[[\u4E00-\u9FA5]{1,3}\]/gi, function(word){
       var newWord = word.replace(/\[|\]/gi,'');
       var index = list.indexOf(newWord);
       var backgroundPositionX = -index * 24
       var imgHTML = '';
       if(index<0){
           return word;
       }

       if (isNoGif) {
           if(index>104){
               return word;
           }
           imgHTML = `<i class="static-emotion" style="background:url(https://res.wx.qq.com/mpres/htmledition/images/icon/emotion/default218877.gif) ${backgroundPositionX}px 0;"></i>`
       } else {
           var path = index>104 ? '/img' : 'https://res.wx.qq.com/mpres/htmledition/images/icon';
           imgHTML = `<img class="static-emotion-gif" style="vertical-align: middle" src="${path}/emotion/${index}.gif">`
       }
       return imgHTML;
   });
   return text;
}


Vue.directive('emotion', {
   bind: function (el, binding) {
       el.innerHTML = toEmotion(binding.value)
   }
});

複製進來就可,然後也組件裏面用 [微笑] 這種方式就能出來表情了
源於添加鏈接描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章