uni.chooseImage 掉uni.getFileInfo 无法获取到 res.digest
时间: 2024-12-10 22:16:16 浏览: 17
在使用 uni.chooseImage 选择图片后,调用 uni.getFileInfo 无法获取到 res.digest 的问题可能有以下几个原因:
1. **文件路径问题**:确保你传递给 uni.getFileInfo 的文件路径是正确的。uni.chooseImage 返回的临时文件路径可能需要使用 uni.getFileSystemManager().getFileInfo 来获取文件信息。
2. **异步操作问题**:uni.chooseImage 和 uni.getFileInfo 都是异步操作,确保你在调用 uni.getFileInfo 时,uni.chooseImage 已经成功返回文件路径。
3. **权限问题**:确保你的应用有读取文件系统的权限。
以下是一个示例代码,展示了如何在选择图片后获取文件的 MD5 摘要:
```javascript
uni.chooseImage({
count: 1,
success: function (res) {
const tempFilePaths = res.tempFilePaths;
uni.getFileSystemManager().getFileInfo({
filePath: tempFilePaths[0],
digestAlgorithm: 'md5',
success: function (fileRes) {
console.log('文件 MD5:', fileRes.digest);
},
fail: function (err) {
console.error('获取文件信息失败:', err);
}
});
},
fail: function (err) {
console.error('选择图片失败:', err);
}
});
```
在这个示例中,我们首先使用 `uni.chooseImage` 选择图片,然后在成功回调中使用 `uni.getFileSystemManager().getFileInfo` 获取文件的 MD5 摘要。
阅读全文