这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

小伙伴们,在开发中有没有遇到过发布帖子或者实时聊天需要发送到一些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;
},

本文转载于:

https://blog.csdn.net/XujiRe/article/details/123186801

如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

记录--微信小程序,uniapp,H5端发送,显示emoji表情相关推荐

  1. 记录一次微信小程序进行长连接通信使用emoji表情

    前言 起因是工作中微信小程序要做一个实时聊天功能并且可以发表情,在微信官方文档中其实是有emoji扩展组件的,用法也大概说明:自己看了一下文档. 之后自己理了理思路,摸索着自己写一个. 正文 Emoj ...

  2. 【微信小程序】微信小程序开发--用户昵称中带有emoji表情的处理方法

    刚开始写小程序,获取客户昵称,后来发现用户昵称是可以为emoji表情的,而Mysql数据库中是不支持直接将emoji表情直接存入数据库的,后来在网站上找了一个方法将所有的昵称转变为Unicode编码存 ...

  3. 微信小程序-如何实现input框输入emoji表情?【亲测有效】

  4. uniapp兼容保利威视频,可编译成微信小程序、移动端、h5

    基于uniapp开发,引入保利威视频云, 代码可编译成微信小程序,移动端,h5,其他小程序理论上都支持但是没有验证,demo下载地址 https://download.csdn.net/downloa ...

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

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

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

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

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

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

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

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

  9. java webpack web项目_官方出品,微信小程序和 Web 端同构解决方案——kbone

    介绍 最近在琢磨一些小程序开发和移动web开发,偶然间在Github上看到了这样一个项目--kbone,一个致力于微信小程序和 Web 端同构的解决方案.微信小程序的底层模型和 Web 端不同,我们想 ...

最新文章

  1. SVN工具的使用 和在Eclipse中安装GPD插件:(多步审批流,因此选择使用工作流(JBPM)来实现)...
  2. Android 中的 Service 全面总结(转)
  3. DDOS三种不同类型的攻击行为—Vecloud
  4. oracle常用函数api,Oracle-API OracleAPI、oracle10G函数大全(常用函数)、 联合开发网 - pudn.com...
  5. 59.排序好的大数据创建索引文件,并实现大文件的二分查找,根据索引百万数据秒读数据...
  6. strcpy()函数一个简单那程序来了解一下它。。
  7. pythonenumapi_python模块之enum_上
  8. 什么情况下使用 if()后面的else可以省略不写
  9. 小A是支枪,子弹未打光---之手 枪篇
  10. 输入法里打出特殊符号
  11. STC8H开发(十二): I2C驱动AT24C08,AT24C32系列EEPROM存储
  12. 数论系列 求证:设自然数a,b互质,则不能表示成ax+by(x,y为非负整数)的最大整数是ab-a-b
  13. Kruskal算法 数据结构 浙江大学 陈越、何钦铭
  14. js网页进度条等待特效
  15. Unity Shader PostProcessing - 8 - Bloom 泛光
  16. 大数据开发超高频面试题!大厂面试必看!包含Hadoop、zookeeper、Hive、flume、kafka、Hbase、flink、spark、数仓等
  17. java isfile 的用法_Java File isFile()方法
  18. SpMV矩阵格式自动调优
  19. Oracle Flashback之Flashback table和flashback drop
  20. springboot某高校绩效考核管理设计与实现毕业设计论文012208

热门文章

  1. HTML中的动画起名字,H5?这么洋气的名字谁起的?(10分周了解H5广告)
  2. python输出斐波那契数列_python面试题之如何用Python输出一个斐波那契数列
  3. 三维动画--Blender软件介绍
  4. PSP模拟器截图CG的高清化-Waifu2x
  5. 怎么才能做好工业地产招商,六步解决所有问题
  6. 欢迎参加12月12日区块链技术与应用论坛(13:30,北京国际饭店)
  7. win10中配置gopath环境变量遇到的问题
  8. python小游戏合集-9个Python编程小游戏,有趣又好玩,简直太棒了
  9. python-09-高阶函数、装饰器
  10. LeetCode题解(0992):K个不同呢的子数组(Python)