如何将AsyncStorage与React Native和钩子一起使用?

时间:2020-02-25 22:04:39

标签: javascript react-native asyncstorage

我正在使用react-native-community/react-native-async-storage库。 例如,我尝试制作类似于React Web的东西,但是没有用

 const [list, setList] = useState([]);


useEffect(() => {
    AsyncStorage.setItem('list', JSON.stringify(setList));
 }, [list]);

2 个答案:

答案 0 :(得分:2)

尝试这种方式

import AsyncStorage from "@react-native-community/async-storage";

export default function App(props) {

  const [list, setList] = useState([]);

  useEffect(() => {
    AsyncStorage.setItem('list', JSON.stringify(list)); <-- Not use "setList", use "list" here -->
  }, [list]);

}

setList是用于设置/更新列表数据的方法

答案 1 :(得分:0)

在react native中,AsyncStorage本质上是异步的。

u需要在函数中添加async / await。

const [list, setList] = useState([]);


useEffect(async () => {
    await AsyncStorage.setItem('list', JSON.stringify(setList));
 }, [list]);