E企盈小程序营销工具技术服务商 热线:4006-838-530

微信小程序评论显示emoji的方法附上代码和类文件不需要改数据库

E企盈小程序直播系统

要显示 emoji表情,就需要把emoji表情存入数据库 但是表情基本上算是一张图片,所以直接存到字段里是不行的,除非把数据库字符集改成 Utf-8mb4 ,下面我们用一种另简单的方法去实现:Base64加密.我们先导入Base64加密的类 (Js文件 文章下面又代码 直接复制粘贴可用) ,然后 用base64加密之后储存到数据库里,然后取出的时候再解密 这些加密解密操作均在前端操作.下面上代码:var base = require(“../base64.js”) //导入base64 类所在的JS文件 var base64 = new base.Base64(); //创建实例var content=base64.encode(this.data.content)// 加密var title=base64.encode( this.data.title);wx.request({                url: ‘你的api接口’,                data: { title: title,                    content: content,                },                method: ‘POST’,                success: function(e) {                    //成功后的操作                }})var base64=new base.Base64();wx.request({url: 你的接口地址’,data:{id:0},success:function(e){var i;//得到数据 循环遍历评论 然后解密for (i in e.data.data.comment.comment){ //这里是遍历对象的方式,不懂看js文档e.data.data.comment.comment[i].content = base64.decode(e.data.data.comment.comment[i].content);//主要看这里 解密评论数据}                //保存数据that.setData({detail:e.data.data,detail_content: base64.decode(e.data.data.article.content),//解密内容detail_title: base64.decode(e.data.data.article.title)//解密标题})}})//这里是Base64类 JS文件function Base64() {// private property  const _keyStr = “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=”;// public method for encoding  this.encode = function (input) {var output = “”;var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;input = _utf8_encode(input);while (i < input.length) {chr1 = input.charCodeAt(i++);chr2 = input.charCodeAt(i++);chr3 = input.charCodeAt(i++);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output +_keyStr.charAt(enc1) + _keyStr.charAt(enc2) +_keyStr.charAt(enc3) + _keyStr.charAt(enc4);}return output;}// public method for decoding  this.decode = function (input) {var output = “”;var chr1, chr2, chr3;var enc1, enc2, enc3, enc4;var i = 0;input = input.replace(/[^A-Za-z0-9+/=]/g, “”);while (i < input.length) {enc1 = _keyStr.indexOf(input.charAt(i++));enc2 = _keyStr.indexOf(input.charAt(i++));enc3 = _keyStr.indexOf(input.charAt(i++));enc4 = _keyStr.indexOf(input.charAt(i++));chr1 = (enc1 << 2) | (enc2 >> 4);chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);chr3 = ((enc3 & 3) << 6) | enc4;output = output + String.fromCharCode(chr1);if (enc3 != 64) {output = output + String.fromCharCode(chr2);}if (enc4 != 64) {output = output + String.fromCharCode(chr3);}}output = _utf8_decode(output);return output;}// private method for UTF-8 encoding  const _utf8_encode = function (string) {string = string.replace(/r/g, “”);var utftext = “”;for (var n = 0; n < string.length; n++) {var c = string.charCodeAt(n);if (c < 128) {utftext += String.fromCharCode(c);} else if ((c > 127) && (c < 2048)) {utftext += String.fromCharCode((c >> 6) | 192);utftext += String.fromCharCode((c & 63) | 128);} else {utftext += String.fromCharCode((c >> 12) | 224);utftext += String.fromCharCode(((c >> 6) & 63) | 128);utftext += String.fromCharCode((c & 63) | 128);}}return utftext;}// private method for UTF-8 decoding  const _utf8_decode = function (utftext) {var string = “”;var i = 0;// var c = c1 = c2 = 0;var c = 0;var c1 = 0;var c2 = 0;var c3 = 0;while (i < utftext.length) {c = utftext.charCodeAt(i);if (c < 128) {string += String.fromCharCode(c);i++;} else if ((c > 191) && (c < 224)) {c2 = utftext.charCodeAt(i + 1);string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));i += 2;} else {c2 = utftext.charCodeAt(i + 1);c3 = utftext.charCodeAt(i + 2);string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));i += 3;}}return string;}}//对小程序暴露接口 这个一定要有module.exports = {Base64: Base64,} 微信小程序

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 微信小程序评论显示emoji的方法附上代码和类文件不需要改数据库
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏