最近在小程序开发过程中,发现之前可用的某个功能字段展示为了undefined,后来查看参数发现页面跳转时参数丢失了导致的

  // group/index.jshandleJump() {const { id, cover, title = '123' } = this.datawx.navigateTo({url: `/pages/group/result?id=${id}&cover=${cover}&title=${title}`})// cover参数url地址'https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.png'}// group/result.jsonLoad(options) {console.log(options) // id, cover, title = 123}

此时获取到的参数都是正常的,在上线一段时间后,其它同学在图片后面加上了oss参数,结果发现title字段为undefined了,导致了展示错误

  const { id, cover, title = '123' } = this.datawx.navigateTo({url: `/pages/group/result?id=${id}&cover=${cover}&title=${title}`})// cover参数url地址'https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.png?x-oss-process=image/resize,m_mfit,h_360,w_360/format,jpg/quality,Q_70'// group/result.jsonLoad(options) {console.log(cover) // https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.pngconsole.log(title) // undefined}

会发现在跳转的url参数中添加了包含特殊字符?的情况下,会出现参数丢失的情况

解决方案:使用encodeURIComponent()与decodeURIComponent()对url参数进行编码与解码

  const { id, cover, title = '123' } = this.datawx.navigateTo({url: `/pages/group/result?id=${id}&cover=${encodeURIComponent(cover)}&title=${title}`})// cover参数url地址'https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.png?x-oss-process=image/resize,m_mfit,h_360,w_360/format,jpg/quality,Q_70'// group/result.jsonLoad(options) {console.log(decodeURIComponent(cover)) // https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.png?x-oss-process=image/resize,m_mfit,h_360,w_360/format,jpg/quality,Q_70console.log(title) // 123}

微信小程序页面跳转时URL参数丢失问题相关推荐

  1. 微信小程序页面跳转,url传参参数丢失问题

    微信小程序页面跳转,url传参参数丢失问题 // pages/order/purchase/index.js// 跳转到采购订单详情toPurchaseOrderDetail(e) {// conso ...

  2. 微信小程序解决跳转时携带参数乱码的问题 ?

    问题场景 在微信小程序中,页面之间传递参数时,参数时链接时,在下个页面出现链接乱码的问题 解决办法(先通过 encodeURIComponent 进行编码) wx.navigateTo({url: ' ...

  3. 基于uniapp开发的微信小程序页面跳转时出现白屏问题的解决方法

    从地区选择跳转到搜索页时会出现20秒白屏才展现搜索页,其它页面就不会出现这个问题,经分析可能是因为地区选择页面中二级联动渲染的数据是本地存储的JSON数据,由于这个数据渲染失误导致了白屏. 因为是二级 ...

  4. h5跳转小程序页面url_微信小程序页面跳转方法

    我所知道的,微信小程序页面跳转有以下方法,下面分情况说明下 一.利用小程序提供的 API 跳转: 1.简单page页面之间跳转 // 保留当前页面,跳转到应用内的某个页面,使用wx.navigateB ...

  5. 微信小程序页面跳转方法总结

    微信小程序页面跳转目前有以下方法(不全面的欢迎补充): 1. 利用小程序提供的 API 跳转: // 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面. // ...

  6. 微信小程序点击带id参数跳转_微信小程序页面跳转方法和携带参数详解

    1.页面跳转方式 (1)标签跳转 open-type的属性值对应api里的用法即wx.的用法 1 跳转到新页面 (2)wx.navigateTo 方法跳转 此方法能够从跳转的页面会回到当前页面 1 w ...

  7. 微信小程序页面跳转后定时器如何关闭

    微信小程序页面跳转后定时器如何关闭 1.在页面中定义,定时器形参,并在跳转到其它页面后,在隐藏和未加载中删除定时器 Page({data: {timer:'',//定义定时器形参,为空字符在这里插入代 ...

  8. 微信小程序页面跳转如何传递对象参数

    前几天一个月薪35k的兄弟,给我推了一个人工智能学习网站,看了一段时间挺有意思的.包括语音识别.机器翻译等从基础到实战都有,很详细,分享给大家.大家及时保存,说不定啥时候就没了. 微信小程序页面跳转如 ...

  9. php 微信公众号跳转小程序,微信小程序页面跳转功能

    本文主要介绍微信小程序页面跳转功能之从列表的item项跳转到下一个页面的方法,结合具体实例形式总结分析了微信小程序页面跳转及列表item项跳转页面的相关操作技巧,需要的朋友可以参考下. 一.效果图 从 ...

最新文章

  1. Ant Design Pro 组件事件绑定 Input onChange
  2. [九省联考2018]IIIDX
  3. bzoj:3110: [Zjoi2013]K大数查询
  4. Python的Pexpect详解 [图片]
  5. 时光手帐怎么修改作品 时光手帐修改作品封面方法
  6. java jdbc 回滚_java_详解Java的JDBC API中事务的提交和回滚,如果JDBC连接是在自动提交模式 - phpStudy...
  7. java多线程学习系列
  8. MySQL查询日期类数据常用函数
  9. Java制作证书的工具keytool用法总结
  10. 计算机共享地址怎么设置到桌面,局域网共享在哪里设置
  11. JavaScript网页游戏开发实战视频教程
  12. 数学——每日一题6 1.13 利用定积分的定义求极限
  13. ​【原型设计】8种原型设计工具介绍​
  14. kafka 偏移量latest、earliest
  15. (bat)检查今天星期几,并执行程序
  16. 在Home Assistant中配置天气信息
  17. C语言数组初始化骚操作
  18. CSP-J2022复赛
  19. centos7在线安装英伟达显卡驱动的方法
  20. keytool生成私钥、公钥、证书详解

热门文章

  1. 写关于数字文旅的论文提纲
  2. 真实的IT界内工资水平
  3. 图-工作日的西湖【曾经的付费视频课春节前放完,以及最后一场直播预告】
  4. Promise是什么?Promise怎么使用?回调地狱
  5. 手机通过笔记本电脑无线网卡联网
  6. crossover的使用过程中出现的问题和解决方法
  7. 紫书动规 例题9-13 UVA - 1220 Party at Hali-Bula 树形dp
  8. sc4020配置方法
  9. 当联想收购IBM流产之后
  10. Linux学习之入门篇(一)