今天遇到一个bug, 前端输入的emoji表情是乱码, 不受支持, 开始以为是微信上X5浏览器的问题, 后来深入了解了下, 原来是讯飞输入法的emoji表情, 大多数是soft bank标准的, 这个标准是apple指定的,
softbank是apple的私有标准, 为啥apple用soft bank这个名字啊, 好奇怪, 我还以为是软银的标准。
解决办法:
https://github.com/node-modules/emoji
- 使用这个库的softbankToUnified方法
把softbank的标准的字符, 转换成unicode的标准的字符,表情会有变化, 部分转换不成功, 但是表情大意就是那个东西了。 - 使用这个库的unifiedToHTML把字符转换成html标签
参考:
Unicode与JavaScript详解
那些年我们踩过的乱码坑
部分非unicode的表情
测试unicode的emoji