微信小程序页面跳转时URL获取不到参数

这篇具有很好参考价值的文章主要介绍了微信小程序页面跳转时URL获取不到参数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

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

 // group/index.js
  handleJump() {
    const { id, cover, title = '123' } = this.data
    wx.navigateTo({
      url: `/pages/group/result?id=${id}&cover=${cover}&title=${title}`
    })

    // cover参数url地址'https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.png'
  }

  // group/result.js
  onLoad(options) {
    console.log(options) // id, cover, title = 123
  }

此时获取到的参数都是正常的,在上线一段时间后,其它同学在图片后面加上了oss参数,结果发现title字段为undefined了,导致了展示错误文章来源地址https://www.toymoban.com/news/detail-514608.html

 const { id, cover, title = '123' } = this.data
  wx.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.js
  onLoad(options) {
    console.log(cover) // https://test.baidu.com/20210926/f91e96d8ef22988d26e63c13bf1d3068_99x93x27.png
    console.log(title) // undefined
  }
解决方案:使用encodeURIComponent()与decodeURIComponent()对url参数进行编码与解码
 const { id, cover, title = '123' } = this.data
  wx.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.js
  onLoad(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_70
    console.log(title) // 123
  }

到了这里,关于微信小程序页面跳转时URL获取不到参数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • H5跳转微信小程序,通过获取URL Scheme,实现短信跳转小程序,微信跳转小程序,邮件跳转小程序,外部链接跳转小程序

    H5链接跳转小程序有2种方式: 第一种:通过微信官方提供的标签wx-open-launch-weapp,打开小程序 第二种:通过获取URL Scheme实现链接跳转小程序 官方文档https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html#21 注意: 开放范围:针对非个人主体小程序开放。 1、缺点 1)

    2024年02月13日
    浏览(62)
  • uniapp微信小程序 页面跳转传参(uni.switchTab传参无法获取,uni.reLaunch传参可以获取)

      因为是tab页面,我首先想到的就是通过:uni.switchTab进行页面跳转。 代码如下: 然后在首页的onShow生命周期函数中进行监听路由参数。 代码如下: 结果uni.switchTab跳转的页面是不能够将路由参数传递到页面中的。  这样就可以拿到路由中的参数了。  这样问题就解决了。

    2024年02月10日
    浏览(59)
  • springboot 跳转微信小程序 生成URL Scheme URL Link

            通过微信文档中的URL link或URL Scheme方式生成,更多事项细节见官方文档 话不多说,直接上代码

    2024年02月08日
    浏览(53)
  • 微信小程序使用nginx跳转第三方url

    先在微信公众平台配置号域名   服务器域名和业务域名都配置好 然后微信小程序使用 web-view标签进行跳转 nginx配置:域名必须有ssl证书,不然还是访问不了 sub_filter如果nginx没装的话需要装一下 首先需要git安装 ngx_http_substitutions_filter_module git没安装:yum -y install git 安装了:

    2024年02月10日
    浏览(53)
  • 微信小程序:跳转页面

    实际调用需要根据自己业务实际情况决定,虽然各种方式一定程度上能减少内存损耗,但是业务上面流转优化才是最终要满足的,一定要从业务流转去优化去考虑,不要为了性能增加了流转复杂度 1、wx.navigateTo 保留当前页面,跳转到应用内的某个页面。可以通过调用  wx.na

    2024年02月03日
    浏览(66)
  • 微信小程序页面跳转方式+跳转小程序

    官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.switchTab.html 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 跳转到其他页面(非tabBar页) 返回上一页面或返回多级页面 首先需要在当前小程序app.json中定义:需要跳转的小程序的app-id app.josn文件: 第一种方法:wx.

    2024年02月12日
    浏览(74)
  • 微信小程序之页面跳转

    1、wx.navigateTo( ): 功能:保留当前页面,跳转到应用内的某个页面。 特点:跳转后原页面保留在后台,可以通过 wx.navigateBack() 返回到原页面,新页面显示在原页面之上,有返回按钮。 2、wx.redirectTo( ): 功能:关闭当前页面,跳转到应用内的另一个页面。 特点:跳转后原页面

    2024年04月23日
    浏览(57)
  • 微信小程序(四)页面跳转

    注释很详细,直接上代码 上一篇 新增内容 1.相对路径页面跳转 2. 绝对路径页面跳转 index.wxml 效果演示: 跳转之后 下一篇

    2024年01月19日
    浏览(48)
  • 微信小程序—点击实现页面跳转

    1.按钮button标签通过bindtap属性绑定点击事件实现页面跳转。 2.但需注意,跳转到tabBar页面和非tabBar页面所调用的函数方法不一样。 跳转到TabBar页面需用wx.switchTab()方法 3.而 跳转到非tabBar页面用wx.navigateTo()方法

    2024年02月11日
    浏览(59)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包