前端怎麼解決emoji表情無法傳送的BUG

php中世界最好的语言
發布: 2017-11-27 14:42:59
原創
3309 人瀏覽過

之前在做行動裝置開發時候,有一個發表評論的功能需要實現,雖然這個功能比較簡單能做出來,但是我在測試的時候說手機自帶的emoji表情發送失敗的BUG總是出現,所以今天為大家帶來出現這種BUG的解決方法

1. 後台更改資料庫格式

#  執行sql語句將資料庫的編碼格式改成utf8mb4 儲存形式,這種4位元組的UTF-8存儲形式可以完美的兼容以前的3字節的存儲形式,並且可以直接存儲emoji表情,這是最完美的解決方案.

2. 使用base-64編碼

  列如可以使用base-encode來編碼emoji表情之後存儲在UTF-8之中,取出的時候decode一下就可以了,但是我沒有試過

3. 幹掉emoji表情

  暴力幹掉,估計PM不會同意這麼做

4. 前端處理

  就是透過第三方插件, 將輸入的emoji轉為span標籤,並賦上相應的class,找一大堆emoji,表情圖片,向後台發送的時候就是發送span表情,這個後台當讓就可以存儲了, 這樣做的好處就在所有的設備上展示的都是一樣的,不會產生歧義,當然缺點就是emoji表情在更新,有可能你所找到的emoji表情圖片庫不全,有的表情無法展示到頁面上,這個就需要定期維護

推荐一個比較好用的插件庫github.com/node-module…

使用方法先下載emoji外掛程式

<link href="http://cdn.staticfile.org/emoji/0.2.2/emoji.css" rel="stylesheet" type="text/css" />
<script src="http://cdn.staticfile.org/emoji/0.2.2/emoji.js"></script>
登入後複製

映入這兩個程式碼庫,這個外掛程式完全不需要依賴jquery庫

接下來就更簡單了

var text = document.querySelector(&#39;emojiText&#39;);
cosnoel.log(jEmoji. unifiedToHTML(text.value))
登入後複製

如果使用了commenJS規格

$ npm install emoji
var emoji = require('emoji');
console.log('
登入後複製

以上是前端怎麼解決emoji表情無法傳送的BUG的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!