当前位置: 首页 > 编程笔记 >

微信小程序调用wx.getImageInfo遇到的坑解决

吴经略
2023-03-14
本文向大家介绍微信小程序调用wx.getImageInfo遇到的坑解决,包括了微信小程序调用wx.getImageInfo遇到的坑解决的使用技巧和注意事项,需要的朋友参考一下

这几天做到微信小程序详情页分享的功能,需要把原页面的一些参数带到分享页,然后在分享页需要获取图片的宽高等基本信息。

1.先说分享传参的方式:

在onShareAppMessage方法里面返回的path里面可以带参数传过去,具体传参的方式有两种,一种是可以传对象(需要把JSON对象stringiny),另外一种是通过一般的参数拼接的方式一个个拼。
代码

onShareAppMessage: function (res) {
 let data = this.data;
 let shareParams = {
  imgSrc: data.imgInfo.src
 }

 let shareData = JSON.stringify(shareParams)

 let path = '/src/?shareData='+ shareData;
 return {
  title: '我在用家图AI识图找家具,快跟上节奏!',
  path: path,
  success: function(res) {
   // 转发成功
   console.log('转发成功')
  },
  fail: function(res) {
   // 转发失败
   console.log('转发失败')
  }
 }
},

2.再说在打开分享过来的页面时怎么拿到刚才那些参数 其实那些参数是在onLoad方法里面的options传过来的,如下代码:

onLoad: function(options) {
  //通过分享进来的
  if(options.shareData){
   console.log(options.shareData)//这个就是刚才传过来的那个JSON对象
  }
}

3.遇到的坑

一开始在调用wx.getImageInfo时一直不掉成功,查了官方文档,发现需要用https的方式下载图片,但是我改成了https的方式也还是调不成功。这时候跟后端的同学咨询了下,看是不是https出了问题,果然,https在这两天刚好证书过期了。等https能正常使用的时候也就可以调用成功了。中间调试过程有点坑,当打开调试时偶尔会调用成功getImageInfo,就是这个有时候能调成功,有时候不能,把我坑惨了。还有在不打开调试时调用非https或者https不可用的时候,getImageInfo既不跳到成功的回调也不跳到失败的回调,也不报错,就像卡死在那了一样。这就很惨,没法调试。

tips:需要把图片服务器的域名加到downloadFile 合法域名里面

到此这篇关于微信小程序调用wx.getImageInfo遇到的坑解决的文章就介绍到这了,更多相关小程序调用wx.getImageInfo内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库! 

 类似资料:
  • 本文向大家介绍微信小程序 slot踩坑的解决,包括了微信小程序 slot踩坑的解决的使用技巧和注意事项,需要的朋友参考一下 今天在使用微信小程序 component 里的 slot 时发现,当只用一个 slot 并且将 slot 命名后,页面中调用这个 slot 并不会加载进来。 研究尝试后发现,如果想要使用命名的方式调用单个 slot ,也需要像调用多个 slot 的方式 在 component

  • 本文向大家介绍微信小程序wx.getImageInfo()如何获取图片信息,包括了微信小程序wx.getImageInfo()如何获取图片信息的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 一.知识点 二.列子 (1).加载时 (2).上传图片时 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊

  • 本文向大家介绍微信小程序点击生成朋友圈分享图(遇到的坑),包括了微信小程序点击生成朋友圈分享图(遇到的坑)的使用技巧和注意事项,需要的朋友参考一下 上个月boss交给我个微信小程序的活,告诉我只需要负责前端页面这块,问我多久做完,于是我不知天高地厚的说 一礼拜就能完工,哈哈哈,果然,现实总是那么无情的来打脸了。。。磨磨蹭蹭一共用了将近3个礼拜才算完事。 今天就来总结下遇到的各种坑好了~~~ 由于做

  • 1.问题现象描述 使用 json.Unmarshal(),反序列化时,出现了科学计数法,参考代码如下: jsonStr := `{"number":1234567}` result := make(map[string]interface{}) err := json.Unmarshal([]byte(jsonStr), &result) if err != nil { fmt.Print

  • @megalo/target 的 platform 设置成 wechat,mini-css-extract-plugin 提取文件后缀改成微信小程序的 wxss。 const createMegaloTarget = require( '@megalo/target' ) const compiler = require( '@megalo/template-compiler' ) const M

  • 1、第三方应用授权对接 ​ 之前对接小程序只提供了开发者授权的方式,这种方式的弊端是,如果客户同时对接了其他的系统,会产生access token冲突,导致消息发不过来。因此新增第三方平台授权的方式,客户可以在智齿后台直接扫二维码授权对接。流程如下: 1.1、选择授权方式,进入配置页 点击绑定小程序时选择授权方式,默认推荐第三方平台授权: 点击确定进入配置页: 1.2、扫描授权二维码 点击“微信公