uniapp base64图片转本地临时图片
时间: 2023-10-25 22:11:00 浏览: 188
在uniapp中,你可以使用以下代码将base64图片转换为本地临时图片:
```javascript
import { uni } from '路径'
// 将base64图片转为本地临时图片
function base64ToSave(base64data, FILE_BASE_NAME = 'tmp_base64src') {
const fsm = uni.getFileSystemManager();
return new Promise((resolve, reject) => {
// 获取图片格式和数据
const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || [];
if (!format) {
reject(new Error('ERROR_BASE64SRC_PARSE'));
}
// 定义保存路径
const filePath = `${uni.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`;
const buffer = uni.base64ToArrayBuffer(bodyData);
// 将数据写入文件
fsm.writeFile({
filePath,
data: buffer,
encoding: 'binary',
success() {
resolve(filePath);
},
fail() {
reject(new Error('ERROR_BASE64SRC_WRITE'));
},
});
});
}
// 使用示例
const base64Image = "data:image/png;base64,iVBORw0KG..."; // 替换为你的base64图片数据
base64ToSave(base64Image)
.then(filePath => {
// 在这里可以使用转换后的本地临时图片路径
console.log(filePath);
})
.catch(error => {
// 处理错误
console.error(error);
});
```
阅读全文