从AsyncStorage清除项目-React Native

苏拉杰·皮莱

我是本机反应新手,目前正在开发需要更新异步存储中特定值的项目。我尝试使用此代码从Asyncstorage清除一个项目,await AsyncStorage.removeItem(key);但是当我使用它时,控制台会抛出这样的错误'await' is only allowed within async functions但是我正在使用异步功能

  const getExceedCountData = async () => {
    const token = await AsyncStorage.getItem("@userToken")
    const exceedcount = await AsyncStorage.getItem("@exceedCount")
    if(!exceedcount){
        try {
        setLoading(true)
        axios
            .get(constants.BASE_URL + "getexceedcount?token=" +token)
            .then(response => {
                if(response.data.status == 1){
                    try {
                        await AsyncStorage.removeItem("@exceedCount");
                    }
                    catch(exception) {
                        console.log('Error Occured');
                    }
                    AsyncStorage.setItem("@exceedCount", response.data.result);
                    setExceedCount({ value:response.data.result, error: '' })
                }
            })
            .catch(error => {
                console.log(error);
            });
        } catch(error) {
            console.log(error);
        }
    }else{
        setExceedCount({ value:exceedcount, error: '' })
    }
  }

我不知道为什么会发生这个问题。任何帮助都是可观的。

strdr4605

您需要将功能标记为异步。

.then(async (response) => {
                if(response.data.status == 1){
                    try {
                        await AsyncStorage.removeItem("@exceedCount");
                    }
                    catch(exception) {
                        console.log('Error Occured');
                    }
                    AsyncStorage.setItem("@exceedCount", response.data.result);
                    setExceedCount({ value:response.data.result, error: '' })
                }
            })

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章