Javascript ImagePicker将数据设置为状态
我试图在ReactNative中创建一个imagePicker,但当我选择该图像时,出现错误: TypeError:this.setState不是函数。(在'this.setState'中)({ avatar:data})“this.setState”未定义) 我不明白为什么我的状态现在没有定义Javascript ImagePicker将数据设置为状态,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我试图在ReactNative中创建一个imagePicker,但当我选择该图像时,出现错误: TypeError:this.setState不是函数。(在'this.setState'中)({ avatar:data})“this.setState”未定义) 我不明白为什么我的状态现在没有定义 export default class ProfileEdit extends Component { constructor(props) { super(props);
export default class ProfileEdit extends Component {
constructor(props) {
super(props);
async function getRoutedUser() {
const route = useRoute();
return route.params.user;
}
this.state = {
user: this.props.navigation.state.params.user,
avatar: ""
};
imagePickerCallback(data) {
this.setState({avatar: data})
}
...
<Button style={styleProperties.buttonEditProfImage} type="outline"
onPress={() => ImagePicker.showImagePicker({}, this.imagePickerCallback)}>
<Text style={styleProperties.buttonEditProfText}>Escolha uma imagem</Text>
</Button>
...
导出默认类概要文件编辑扩展组件{
建造师(道具){
超级(道具);
异步函数getRoutedUser(){
const route=useRoute();
返回route.params.user;
}
此.state={
用户:this.props.navigation.state.params.user,
阿凡达:“
};
imagePickerCallback(数据){
this.setState({avatar:data})
}
...
ImagePicker.showImagePicker({},this.imagePickerCallback)}>
埃斯科拉乌马影像
...
谢谢!!您应该将
imagePickerCallback
声明为arrow函数,或者您应该在构造函数中为您的函数绑定它。您可以在React中阅读有关处理事件的更多信息。尝试以下操作:
导出默认类概要文件编辑扩展组件{
建造师(道具){
超级(道具);
异步函数getRoutedUser(){
const route=useRoute();
返回route.params.user;
}
此.state={
用户:this.props.navigation.state.params.user,
阿凡达:“
};
imagePickerCallback=(数据)=>{
this.setState({avatar:data})
}
...
ImagePicker.showImagePicker({},this.imagePickerCallback)}>
埃斯科拉乌马影像
…
@Leonardores不客气,请投票表决我的答案。谢谢。