uni-app uni.getImageInfo 3个回调方法都不执行

发布于 1周前 作者 ionicwang 来自 Uni-App

uni-app uni.getImageInfo 3个回调方法都不执行

开发环境 版本号 项目创建方式
Windows win10 HBuilderX
### 操作步骤:
正常调用方法就可以复现

### 预期结果:
方法正常执行

### 实际结果:
没有一个方法执行

### bug描述:
见附件  
我的hb3.3.13的版本,我让同事升级到最新版  3.4.7.20220422  也是不好使的  
见鬼了  
安卓是正常的,苹果不正常,也不知道啥时候不正常了,反正今天过来就不好使了  
自定义调试包

3 回复

发行app之后再去打开运行是没有问题,dev有问题。。。。


升级最新版本HX测试一下是否正常,如果解决不了请上传一个可复现问题的demo工程

在使用 uni.getImageInfo 时,如果三个回调方法(successfailcomplete)都不执行,可能是由于以下几个原因导致的。你可以逐一排查:

1. 图片路径问题

  • 确保你传入的图片路径是正确的。如果路径错误,uni.getImageInfo 可能无法获取图片信息,导致回调方法不执行。
  • 如果图片路径是网络图片,确保网络请求是成功的,且图片可以正常加载。
uni.getImageInfo({
    src: 'https://example.com/image.png', // 确保路径正确
    success: (res) => {
        console.log('图片信息:', res);
    },
    fail: (err) => {
        console.error('获取图片信息失败:', err);
    },
    complete: () => {
        console.log('获取图片信息完成');
    }
});

2. 网络问题

  • 如果图片是网络图片,确保设备网络连接正常,且图片服务器没有限制跨域访问。
  • 如果图片服务器限制了跨域访问,可能会导致 uni.getImageInfo 无法获取图片信息。

3. 权限问题

  • 在某些平台上(如微信小程序),获取网络图片信息可能需要配置域名白名单。确保你已经在微信小程序后台配置了合法的域名。

4. 平台兼容性问题

  • uni.getImageInfo 在不同平台上的表现可能有所不同。确保你使用的平台支持该 API。
  • 你可以在 uni.getSystemInfo 中检查当前平台,并根据平台特性进行适配。

5. 代码逻辑问题

  • 确保 uni.getImageInfo 的调用是在正确的生命周期或事件中执行的。例如,在 onLoadonReady 生命周期中调用,而不是在 onShowonHide 中。

6. 异步问题

  • 如果 uni.getImageInfo 是在异步操作中调用的,确保异步操作已经完成,且 uni.getImageInfo 被正确执行。

7. 调试工具问题

  • 如果你在开发工具中调试,尝试在真机上运行,看看问题是否依然存在。有时候开发工具可能会有一些限制或 bug。

8. 版本问题

  • 确保你使用的 uni-app 版本是最新的,或者至少是支持 uni.getImageInfo 的版本。旧版本可能存在 bug 或功能不完善。

9. 其他问题

  • 如果以上方法都无法解决问题,可以尝试在 uni.getImageInfo 调用前后添加日志,看看是否有其他异常情况。
console.log('开始获取图片信息');
uni.getImageInfo({
    src: 'https://example.com/image.png',
    success: (res) => {
        console.log('图片信息:', res);
    },
    fail: (err) => {
        console.error('获取图片信息失败:', err);
    },
    complete: () => {
        console.log('获取图片信息完成');
    }
});
console.log('结束获取图片信息');
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!