小书1998
小书1998
  • 发布:2025-10-27 10:25
  • 更新:2025-10-27 10:25
  • 阅读:52

chooseImage在h5端直接打开相机后点击取消fail和complete方法都不走,怎么捕获点击取消呢

分类:uni-app
    uni.chooseImage({  
        count: 1,  
        sizeType: [compressed ? 'compressed' : 'original'],  
        sourceType: ['camera'],  

        success: res => {  
            console.log('[takePhoto] success =>', res);  
            // 部分内核会 success 但没文件  
            const files: any[] = Array.isArray(res.tempFiles)  
                ? res.tempFiles  
                : res.tempFiles  
                ? [res.tempFiles]  
                : [];  
            const f: any = files[0];  
            if (!f) return finish(null);  

            const path = f.path || f.tempFilePath || (res.tempFilePaths && res.tempFilePaths[0]) || '';  
            if (!path) return finish(null);  

            const size = f.size ?? 0;  
            const mime = f.type;  
            finish({ path, size, mime });  
        },  

        fail: err => {  
            console.log('[takePhoto] fail =>', err);  
            // 统一按取消处理  
            finish(null);  
        },  

        complete: () => {  
            console.log('[takePhoto] complete');  
            // 某些端不会进 success/fail,也要收口  
            // 注意:如果 success 已经 finish,这里会被 finish 的“一次性锁”拦住  
            finish(null);  
        },  

在h5页面点击取消fail和complete都没捕获

2025-10-27 10:25 负责人:无 分享
已邀请:

要回复问题请先登录注册