• 微信小程序携带参数跳转页面出现Unexpected end of JSON input;at "xxx" page lifeCycleMethod onLoad...


    前言:最近做小程序项目,商城类的项目,下单时出现了Unexpected end of JSON input;at "xxx" page lifeCycleMethod onLoad...这个问题,下单时携带参数跳转到下单页面,使用

    JSON.stringify转化数据,将数据携带到下一个页面,使用JSON.parse转为出现问题,下面一起来解决一下这个问题.
    在微信小程序页面上解析html语法并显示在页面上,查看网址:https://www.cnblogs.com/0314dxj/p/12738880.html
     
    数据格式:因为该商品的详情是用富文本编辑器编辑的数据,所以拿到的数据格式一个带html语法的格式,例如:
    detailes:'<p style="text-align:center;font-size:16px;">微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,
    用户扫一扫或搜一下即可打开应用。
    全面开放申请后,主体类型为企业、政府、媒体、其他组织或个人的开发者,均可申请注册小程序。微信小程序、微信订阅号、微信服务号、微信企业号是并行的体系。
    微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态。
    微信小程序也是这么多年来中国IT行业里一个真正能够影响到普通程序员的创新成果,已经有超过150万的开发者加入到了微信小程序的开发,
    与我们一起共同发力推动微信小程序的发展,微信小程序应用数量超过了一百万,覆盖200多个细分的行业,日活用户达到两个亿,微信小程序还在许多城市实现了支持地铁、公交服务。
    微信小程序发展带来更多的就业机会,2017年小程序带动就业104万人,社会效应不断提升。 [1] 
    2017年1月9日,张小龙在2017微信公开课Pro上发布的微信小程序正式上线
    </p>
    <img src="https://bkimg.cdn.bcebos.com/pic/dcc451da81cb39dbeb543df1de160924aa183084?x-bce-process=image/resize,m_lfit,w_268,limit_1/format,f_jpg">'

    显示回来的数据是带html语法的,有图片有文字,现在是要将这些东西传递给下一个页面

     let data = JSON.stringify(this.data.details) // 传递的数据必须是string类型
     wx.navigateTo({
       url: "/pages/meaning/meaning?data=" + data
      })

    子页面接收数据:

    that.data.commodity = JSON.parse(options.data);

    注意:这样写是没有问题的,但是如果传递过来的字段里面是有图片img的,解析时会直接报错,显示Unexpected end of JSON input;at "xxx" page lifeCycleMethod onLoad...,在页面上是显示不出来的(线上亲身入过坑...)

    查阅了资料才知道是有特殊的字符url解析不了。

    解决方法:

    // 传递数据跳转页面
    let data = JSON.stringify(this.data.details) wx.navigateTo({ url: "/pages/meaning/meaning?data=" + encodeURIComponent(data) }) // encodeURIComponent加上这个方法

    // 子页面接收数据显示:
      let data = decodeURIComponent((options.data)); // decodeURIComponent()加上该方法
      that.data.commodity = JSON.parse(data);

    这样错误就解决了,亲测有效

  • 相关阅读:
    如何进行简单画图
    缓冲技术
    信号量机制
    进程通信
    中断技术
    操作系统原理-图书主题
    供多处理器系统中的高速缓存同步中使用的转发状态
    js几种escape()解码与unescape()编码
    MySQL 元数据
    MySQL 复制表
  • 原文地址:https://www.cnblogs.com/0314dxj/p/12738692.html
走看看 - 开发者的网上家园