我是React Native的新手,所以尝试学习。 我正在尝试使用React Native中的钩子设置默认值,如下所示:
const [recent, setRecent] = useState('No data')
我正在使用异步存储来获取最近的值。如果在异步存储中找不到该值,则需要将默认值设置为No Data
如何实现这种行为?
答案 0 :(得分:0)
您需要使用useEffect
钩子。它将在首次安装组件时运行。在其中,您需要运行一个异步函数来检查AsyncStorage的值。这必须以特定的方式完成,如下面示例所示(创建异步函数,然后立即运行它)。然后根据发现的值更新值。
const [ recent,setRecent ] = React.useState()
React.useEffect(() => {
const checkAsync = async () => {
const value = await AsyncStorage.getItem('@storage_Key')
if (value !== undefined && value !== null){
setRecent(value)
} else {
setRecent('No data')
}
}
checkAsync()
}, [])