saveValueFunction = () => {
if(this.state.textInputData){
AsyncStorage.setItem('KEYVALUE', this.state.textInputData);
console.log("DATA SAVED" +this.state.textInputData)
this.setState({ textInputData: '' })
alert('Data Saved');
}else{
alert('Please fill data');
}
};
我在first.js class中使用的这个代码,我想在second.js类中获得其值 但是我得到此错误类型:null不是对象(评估'this.state.getValue') constructor() {
super();
AsyncStorage.getItem('KEYVALUE').then(value =>
this.setState({ getValue: value })
);
}
首先,,您不得在构造函数内使用任何异步代码,而是在componentDidMount
中。
第二,,您遇到的错误是因为您没有在构造函数中初始化状态并尝试运行setState
constructor() {
super();
this.state = {};
}
componentDidMount() {
AsyncStorage.getItem('KEYVALUE').then(value =>
this.setState({ getValue: value })
);
}