IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 微信小程序用户昵称包含表情图片的解决方案 -> 正文阅读

[JavaScript知识库]微信小程序用户昵称包含表情图片的解决方案

好好的用文字不好嘛,弄什么表情啊=====

但是问题还是要解决,走过的坑,分享一下解决方案,个人认为这个是全网最简单的。

之前的做法是直接传递给后端,后端再返回来的时候,表情就会变成?!这种乱码。

①直接粗暴去掉表情,但是这样会导致一个问题,有些用户的昵称只有表情,全给干没了,昵称就是空了、、空了、、

    //获取到的用户昵称        
    let wechatName = res.userInfo.nickName
    //检测是否含有表情
    var regRule = /\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F]/g;
    if(wechatName.match(regRule)){
       wechatName = wechatName.replace(/\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F]/g, "");
       console.log(wechatName)
    }

②发现小程序在传递参数的时候,昵称是自动进行了url转码,表情也被转码了,那这样后端直接返回给我编码后的昵称,前端再进行解码就可以还原表情了。

经测试,decodeURI(wechatName) 和?decodeURIComponent(wechatName) 都可解码

decodeURI(wechatName) 
decodeURIComponent(wechatName) 

?

关于 url编码和解码 相关,参考?https://blog.csdn.net/qq_23050099/article/details/81026135

1、escape 和 unescape

原理:对除ASCII字母、数字、标点符号 @ ?* ?_ ?+ ?- ?. ?/ 以外的其他字符进行编码。

2、encodeURI 和 decodeURI

原理:返回编码为有效的统一资源标识符 (URI) 的字符串,不会被编码的字符:! @ # $ & * ( ) = : / ; ? + '

encodeURI()是Javascript中真正用来对URL编码的函数。

编码:encodeURI(encodeURI(data.oneTypeName))

解码:decodeURI(request["OneTypeName"]);

3、encodeURIComponent 和 decodeURIComponent

原理:对URL的组成部分进行个别编码,而不用于对整个URL进行编码

encodeURI(encodeURI(data.oneTypeName))

decodeURI(request["OneTypeName"]);
?

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 07:59:01  更:2022-05-08 08:01:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:15:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码