AsyncStorage.removeItem 没有删除项目

AsyncStorage.removeItem is not removing the item

有很多可用的问题,我尝试了将近 12 种不同的方法,但 none 都有效。效率最高的是:

  async function removeItemValue(key) {
    try {
      await AsyncStorage.removeItem(key);
      return true;
    }
    catch (exception) {
      return false;
    }
  }

那么我称它为:

  useEffect(() => {
    removeItemValue('@cartInfo');  
  }, []);

我试过将它放在 useEffect 钩子之外,但仍然没有效果。我做错了什么?


更新:

也试过了,但没有用:

  useEffect(() => {
    removeItemValue('@cartInfo').then(() => { console.log('removed') })
  }, []);

也试过

  useEffect(() => {
    AsyncStorage.removeItem('@cartInfo', () => {
      AsyncStorage.getItem('@cartInfo').then((res) => {
        console.log("RES IS: " + res);
      })
    })
  }, []);

仍然没有运气。我正在使用 @react-native-community/async-storage

的 v1.12.1

正如我们在 chat 中所讨论的那样,AsyncStorage.removeItem 实际上是有效的,问题是 setItem 被调用得太频繁了,所以这个值在被读取之前被替换了在 getItem.