uniapp 上传原图 并将上传的原图转换base64
时间: 2024-11-28 12:26:18 浏览: 19
JavaScript将base64图片转换成formData并通过AJAX提交的实现方法
UniApp是一个基于Vue.js的跨平台应用开发框架,它允许开发者构建一次,运行在多种设备上,包括iOS、Android、Web等。如果你想在UniApp中上传原图并将其转换成Base64编码,可以按照以下步骤操作:
1. **准备文件组件**:
使用UniApp提供的`uni-file-picker`组件让用户选择图片,这个组件会在iOS和Android平台上显示本地的图片库。
```javascript
<template>
<view>
<button @click="selectImage">选择图片</button>
<input type="hidden" value="" v-model="fileUrl" :key="fileId">
</view>
</template>
<script>
export default {
data() {
return {
fileId: '',
fileUrl: ''
};
},
methods: {
selectImage() {
uni.chooseFile({
sourceType: ['album', 'camera'], // 可选来源:相册或相机
success(res) {
const file = res.fileList[0];
this.fileId = file.id;
uni.readFile(file, 'binary') // 读取文件内容
.then((result) => {
this.fileUrl = result.data.toString('base64');
});
}
});
}
}
};
</script>
```
2. **处理Base64转换**:
`uni.readFile()`返回的是文件的内容,通过`.toString('base64')`即可将其转换为Base64字符串。
当你点击“选择图片”按钮后,用户可以选择图片,然后图片会自动被转换成Base64格式并存储在`fileUrl`变量中。
阅读全文