// utils/index.js
export const saveBase64Img = (base64, url) => {
const bitmap = new plus.nativeObj.Bitmap("test");
return new Promise((resolve, reject) => {
// 从本地加载Bitmap图片
bitmap.loadBase64Data(
base64,
() => {
bitmap.save(
url,
{
overwrite: true, // 是否覆盖
// quality: quality // 图片清晰度
},
(i) => {
uni.saveImageToPhotosAlbum({
filePath: url,
success: () => {
resolve({
code: 0,
msg: "保存成功",
filePath: url,
});
},
fail: (err) => {
console.log(err);
},
});
},
(e) => {
reject("保存图片失败:" + JSON.stringify(e));
}
);
},
(e) => {
reject("加载图片失败:" + JSON.stringify(e));
}
);
});
};
// .vue文件
<script>
import { saveBase64Img } from "@/utils";
methods: {
onSave() {
saveBase64Img(base64, `/${'文件名'}.png`).then((res) => {
this.$u.toast("图片保存成功");
});
}
}
</script>
注意:/${'文件名'}.png 一定要加斜杠 '/',不然导出不成功