前端如何處理emoji表情無法發送的BUG
發表時間:2023-12-25 來源:明輝站整理相關軟件相關文章人氣:
[摘要]之前在做移動端開發時候,有一個發表評論的功能需要實現,雖然這個功能 比較簡單能做出來,但是我在測試的時候說手機自帶的emoji表情發送失敗的BUG總是出現,所以今天給大家帶來出現這種BUG的解決方法1. 后臺更改數據庫格式 執行sql語句將數據庫的編碼格式改成utf8mb4 存儲形式,這種4字節...
之前在做移動端開發時候,有一個發表評論的功能需要實現,雖然這個功能 比較簡單能做出來,但是我在測試的時候說手機自帶的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('emojiText');
cosnoel.log(jEmoji. unifiedToHTML(text.value))
如果使用了commenJS規范
$ npm install emoji
var emoji = require('emoji');
console.log('以上就是前端怎么解決emoji表情無法發送的BUG的詳細內容,更多請關注php中文網其它相關文章!
網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。