Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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 Hooks_React Functional Component - Fatal编程技术网

Reactjs 使用上下文响应无效的钩子调用

Reactjs 使用上下文响应无效的钩子调用,reactjs,react-hooks,react-functional-component,Reactjs,React Hooks,React Functional Component,我试图编写一个简单的组件,在渲染时从API获取游戏状态,并有条件地渲染适当的组件。我正在使用上下文存储状态,但在调用分派时,我一直收到无效的钩子调用。[在此处输入图像描述][1] 从“React”导入React; 导入“/App.css”; 从“./Components/Landing/Landing”导入着陆; 从“./DrawPokerContext”导入{PokerContext}; 常量初始状态={ 令牌:null, 扑克游戏:错, }; const reducer=(状态、操作)=>

我试图编写一个简单的组件,在渲染时从API获取游戏状态,并有条件地渲染适当的组件。我正在使用上下文存储状态,但在调用分派时,我一直收到无效的钩子调用。[在此处输入图像描述][1]

从“React”导入React;
导入“/App.css”;
从“./Components/Landing/Landing”导入着陆;
从“./DrawPokerContext”导入{PokerContext};
常量初始状态={
令牌:null,
扑克游戏:错,
};
const reducer=(状态、操作)=>{
开关(动作类型){
案例“UpdateName”:
setItem(“pokerGame”,JSON.stringify(action.payload.pokerGame));
setItem(“token”,JSON.stringify(action.payload.token));
返回{
令牌:action.payload.token,
扑克游戏:action.payload.扑克游戏
};
案例“SETGAME”:
setItem(“扑克游戏”,JSON.stringify(action.payload));
返回{
扑克游戏:action.payload,
令牌:空
};
违约:
返回状态;
}
};
函数App(){
const[state,dispatch]=React.useReducer(reducer,initialState);
返回(
);
}

导出默认应用程序
您需要在useffect调用中定义并调用您的
fetchGame
函数。我尝试了此操作,但没有改变输出的错误。。似乎对我有用。你能创建一个可复制的文档吗?这很有帮助,谢谢。结果是React有多个版本,而不是代码本身。您需要在useEffect调用中定义并调用
fetchGame
函数。我尝试了这一点,但没有改变输出的错误。。似乎对我有用。你能创建一个可复制的文档吗?这很有帮助,谢谢。最终的问题是React有多个版本,而不是代码本身。