小伙伴们,在开发中有没有遇到过发布帖子或者实时聊天需要发送到一些emoji表情的。

但是每当我们直接将emoji表情提交到后台的接口又会报错,因为字符串的格式不一致导致数据无法添加致数据库。
那么作为前端的我们就要将我们要提交的数据,通过如下方法正则获取所有的emoji表情,将其转成 base64 。

// 将emoji表情其转成 base64
utf16toEntities:function(str) {var patt = /[\ud800-\udbff][\udc00-\udfff]/g; // 检测utf16字符正则str = str.replace(patt, function (char) {var H, L, code;if (char.length === 2) {H = char.charCodeAt(0); // 取出高位L = char.charCodeAt(1); // 取出低位code = (H - 0xD800) * 0x400 + 0x10000 + L - 0xDC00; // 转换算法return "&#" + code + ";";} else {return char;}});return str;
},

这样我们就可以成功的将emoji表情提交到后台并加入数据库中了
那么怎么显示的时候是一串字符串呢?
那是因为你这里没有在转一下字符串类型导致现在显示出来的不是emoji表情,而是一串字符串
接着我们就要在显示前使用如下方法将该字段解码

// 解码emoji表情
uncodeUtf16:function(str){var reg = /\&#.*?;/g;var result = str.replace(reg, function (char) {var H, L, code;if (char.length == 9) {code = parseInt(char.match(/[0-9]+/g));H = Math.floor((code - 0x10000) / 0x400) + 0xD800;L = (code - 0x10000) % 0x400 + 0xDC00;return unescape("%u" + H.toString(16) + "%u" + L.toString(16));} else {return char;}});return result;
},

以上是小编的一个解决方案,如果小伙伴们还有什么好的方法请在下方评论,告知一下小编哦!

微信小程序、uniapp、H5——发送、显示emoji表情相关推荐

  1. 记录--微信小程序,uniapp,H5端发送,显示emoji表情

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 小伙伴们,在开发中有没有遇到过发布帖子或者实时聊天需要发送到一些emoji表情的. 但是每当我们直接将emoji表情提交到后台的接口又会报 ...

  2. uni-app开发微信小程序,H5 关于压缩上传图片的问题

    文章目录 前言 一.为什么要压缩图片 二.图片压缩方式 1. 微信小程序​​​​​​​ 2. H5 总结 前言 关于微信小程序.H5兼容性问题,今天就压缩以及上传图片做一个可实现方法的简要阐述. 一. ...

  3. Shopro商城 高级版 Fastadmin和Uniapp进行开发的多平台商城(微信公众号、微信小程序、H5网页、Android-App、IOS-App)

    Shopro商城无加密的开源源码(可用于自营+外包项目(多主体).可用于外包定制开发项目) shopro 商城,一款基于 uni-app 的前端模板商城.目前适配了(小程序+app+h5+公众号). ...

  4. Shopro商城,基于Fastadmin和Uniapp进行开发的多平台(微信公众号、微信小程序、H5网页、Android-App、IOS-App)购物商城

    Shopro商城 基于Fastadmin和Uniapp进行开发的多平台(微信公众号.微信小程序.H5网页.Android-App.IOS-App)购物商城,拥有强大的店铺装修.小程序直播.自定义模板. ...

  5. uniapp实现微信小程序全局【发送给朋友】、【分享到朋友圈】、【复制链接】

    在开发微信小程序的时候,发现[发送给朋友].[分享到朋友圈].[复制链接]功能,灰色不可用. 很常见的功能,但是这几个功能,并不是你项目建起来了就有的. 1.[发送给朋友]使用 onShareAppM ...

  6. json 微信小程序 筛选_GitHub - zhengyangkang/sl-filter: uni -app 一款使用简单的筛选组件,适配app、微信小程序、H5。...

    sl-filter 筛选 筛选组件,组件名:sl-filter dcloud插件市场地址 sl-filter 简介 一款使用简单的筛选组件,适配app.微信小程序.H5. 感谢分享 效果图 并列菜单 ...

  7. 微信小程序uni-app

    文章目录 一.微信小程序uni-app 二.下载微信开发者工具 三.小程序开发 一.微信小程序uni-app 小程序是一种不需要下载.安装即可使用的应用,它实现了应用触手可及的梦想,用户扫一扫或者搜一 ...

  8. html5苹果x底部满屏,iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配...

    最近写小程序时,遇到了 iPhoneX 底部小黑线与内容重叠的问题,实际上是iPhoneX安全区域的适配问题,了解清楚这个问题花了挺多时间的,也实操出了结果,忍不住来总结总结. 前言 在苹果 iPho ...

  9. iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配

    最近写小程序时,遇到了 iPhoneX 底部小黑线与内容重叠的问题,实际上是iPhoneX安全区域的适配问题,了解清楚这个问题花了挺多时间的,也实操出了结果,忍不住来总结总结. 本文目录 前言     ...

  10. 开发微信小程序(uniapp)

    @2021SC@SDUSC WebStorm开发微信小程序(uniapp) 创建项目 采用cli方式创建的项目 vue create -p dcloudio/uni-preset-vue my-pro ...

最新文章

  1. 7 自动开启网卡_淘汰的旧手机别扔掉,这样设置变身4G上网卡
  2. ORA-00913错误:PL/SQL: ORA-00913: too many values
  3. 厦门计算机高级职称,2021年厦门工程师职称属于哪种职称?
  4. opencv运行时exe 无法写进去的解决方法
  5. ElementUI的el-table怎样隐藏某一列
  6. Python内存管理方式和垃圾回收算法解析
  7. 决策树分类python代码_分类算法-决策树 Decision Tree
  8. 跳转到企业缓存之前要考虑的事项
  9. 如何执行一段java代码_V8 之 如何执行一段 JavaSscript 代码
  10. Color.js增强你对颜色的控制
  11. 解决crlf 和 lf不同带来的冲突问题
  12. java hibernate的使用_java – 使用hibernate / JPA登录
  13. 百度地图定位SDK 之构想
  14. linux unlink 与 rm区别_从 lsof 开始,深入理解 Linux 虚拟文件系统
  15. 字节跳动代理商_横跨字节跳动海外抖音核心代理商爆发!(002803)
  16. 图书管理系统mysql数据库设计_简单的图书馆管理系统数据库设计
  17. 【自动驾驶】MPC控制器 + 驾驶模型器
  18. [易飞]关于应付账款明细帐余额余总账不平解决方案
  19. Python分解质因数
  20. 解决fatal: unable to access‘‘:GnuTLS recv error

热门文章

  1. ISTQB初级认证-知识点及脑图总结
  2. C/C++路面导航系统[2023-01-16]
  3. 如何创建自己的 Google Chrome 扩展程序
  4. Go生成Excel文件并下载及问题
  5. Unity之线性渲染器
  6. Mysql报错:SQLIntegrityConstraintViolationException: Duplicate entry ‘xxx‘ for key ‘PRIMARY‘
  7. 8卡gpu服务器是8个芯片,北京8卡GPU服务器厂商
  8. 关于护肤那些事(程序员必知,女朋友要考的)
  9. php批量改名工具,批量更名大师下载_批量改名大师(Win-Tool之文件批量更名工具) 1.8.7 演示版_极速下载站_软件下载...
  10. 1688采源宝的商家靠谱吗 怎么入驻成为阿里采源宝商家