目前正在开发一个 SendBird 和 react-native 项目,该模块是关于将自动生成的配置文件图像更改为profileUrl
从手机相机或画廊存储中获取的新图像。但是,我输入的以下代码不起作用,它要么显示错误,要么应用程序冻结。我可以知道我在哪里做错了吗?(使用 react-native-image-picker 上传/选择图像)。
_changeProfileImg(){
ToastAndroid.show('ClickedImage', ToastAndroid.SHORT);
var _Self = this;
var source = [];
ImagePicker.showImagePicker(options, (response) => {
if (response.didCancel){
console.log('user canceled image picker');
}
else if (response.error){
console.log('imagePicker error', response.error);
}
else if (response.customButton){
console.log('customised clicked', response.customButton);
}
else{
source = {uri:response.uri};
// const source = { uri: 'data:image/jpeg;base64,' + response.data };
this.setState({
profileUrl: source,
});
}
});
}
render(){
return(
<View style={styles.container}>
<View style={styles.contentFlex}>
<Text>{this.state.profileUrl}</Text>
<Avatar
rounded
size="xlarge"
source={{uri: this.state.profileUrl}}
onPress={this._changeProfileImg.bind(this)}
activeOpacity={0.7}
/>
</View>