如何在react native中将本地映像转换为base64并上传到服务器上,请帮助任何人解决此查询。我已经尝试使用Google上名为 image-to-base64 npm的库。
答案 0 :(得分:0)
import ImgToBase64 from 'react-native-image-base64';
ImgToBase64.getBase64String('file://path/to/file')
.then(base64String => {
// Send the base64String to server
})
.catch(err => console.log(err));
答案 1 :(得分:0)
所有人,我们都可以使用Image picker获得图像的base64字符串,以响应本机用于Profile的使用以及更多其他工作。 在这里,我放了一段代码,这将有助于使用图像选择器功能使base64字符串在react native中得到响应。
selectPhotoTapped() {
const options = {
quality: 1.0,
maxWidth: 500,
maxHeight: 500,
storageOptions: {
skipBackup: true,
},
};
ImagePicker.showImagePicker(options, response => {
console.log('Response = ', response.data);
if (response.didCancel) {
console.log('User cancelled photo picker');
} else if (response.error) {
console.log('ImagePicker Error: ', response.error);
} else if (response.customButton) {
console.log('User tapped custom button: ', response.customButton);
} else {
// let source = { uri: response.uri }; <-- here you can get uri of image
// var RNFS = require('react-native-fs');
// You can also display the image using data:
let source = 'data:image/jpeg;base64,'+ [response.data]; //<-- here you can get image with base64string
this.setState({
avatarSource: source,
});
// this.setState({
// Profile_Picture:this.state.avatarSource
// })
// console.log(this.state.Profile_Picture)
}
});
}
之后,您可以使用onPress事件从库中获取图像,但是在此之前,您必须授予使用本地存储中的android或IOS图像的权限。 图像选择器安装的链接 Use This Link for Installation of Image picker in react native
答案 2 :(得分:0)
使用expo API
import { ImageManipulator } from 'expo';
const response = await ImageManipulator.manipulateAsync("file to local path", [], { base64: true })
console.log('base64res' + JSON.stringify(response));