确保在使用AsyncStorage时使用异步函数,并使用回调确保每次递增操作都完成。以下是一个示例:
import React, { Component } from 'react';
import { View, Text, AsyncStorage } from 'react-native';
export default class Example extends Component {
state = {
count: 0
}
componentDidMount() {
this.incrementCount();
}
incrementCount = async () => {
try {
const value = await AsyncStorage.getItem('count');
if (value !== null) {
const count = parseInt(value) + 1;
this.setState({ count });
await AsyncStorage.setItem('count', count.toString());
} else {
await AsyncStorage.setItem('count', '1');
this.setState({ count: 1 });
}
} catch (error) {
console.log(error);
}
}
render() {
return (
Count: {this.state.count}
);
}
}