Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何在页面加载时加载函数_Reactjs_React Native - Fatal编程技术网

Reactjs 如何在页面加载时加载函数

Reactjs 如何在页面加载时加载函数,reactjs,react-native,Reactjs,React Native,我使用带有钩子的react-native,每次用户打开我的react-native屏幕时,我都尝试从AsyncStorage加载JSON。此JSON包含关于我的状态应设置为什么的信息 如何调用每次打开此屏幕时运行的函数 我知道如果没有钩子,这应该使用useffect来完成,但是当我将api调用放在那里时,它会出错 这是我的密码 useEffect(() => { const getKind = () => { ForceApi.post(`/GetKindPensionCon

我使用带有钩子的react-native,每次用户打开我的react-native屏幕时,我都尝试从AsyncStorage加载JSON。此JSON包含关于我的状态应设置为什么的信息

如何调用每次打开此屏幕时运行的函数

我知道如果没有钩子,这应该使用useffect来完成,但是当我将api调用放在那里时,它会出错

这是我的密码

useEffect(() => {
const getKind = () => {
    ForceApi.post(`/GetKindPensionController.php`)
      .then(res => {
        setpPensionKind(res.data.pension);
    })
  }


}, []);

您缺少对getKind的调用,它应该是一个异步函数!要获得更好的代码,请尝试以下操作:

useEffect(() => {
    async function getKind() {
       const { data } = await ForceApi.post(`/GetKindPensionController.php`)
       setpPensionKind(data.pension);
    }

    getKind();
}, []);

错误是什么?另外,您没有在上面的代码段中调用
getKind
方法,因此从技术上讲
useffect
没有做任何事情