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 错误:使用react redux时,提供程序上的钩子调用无效_Reactjs_Redux_React Redux - Fatal编程技术网

Reactjs 错误:使用react redux时,提供程序上的钩子调用无效

Reactjs 错误:使用react redux时,提供程序上的钩子调用无效,reactjs,redux,react-redux,Reactjs,Redux,React Redux,我正在制作一个应用程序,从一个url获取参数,并根据url的值进行工作,为了做到这一点,我尝试实现redux,我认为我编写了大部分代码,我是react和redux的初学者。 当我在index.js文件中插入Provider时,它给了我无效的钩子调用错误。我曾经遇到过一些帖子,但没有一篇能够解决这个问题。 例如:, 向我询问任何代码,因为我真的需要弄清楚这一点。正如日志所示,您可能正在违反挂钩规则。请尝试将redux提供程序、存储设置和reducer包装在功能组件中 例如: 从“React”导入

我正在制作一个应用程序,从一个url获取参数,并根据url的值进行工作,为了做到这一点,我尝试实现redux,我认为我编写了大部分代码,我是react和redux的初学者。 当我在index.js文件中插入Provider时,它给了我无效的钩子调用错误。我曾经遇到过一些帖子,但没有一篇能够解决这个问题。 例如:,


向我询问任何代码,因为我真的需要弄清楚这一点。

正如日志所示,您可能正在违反挂钩规则。请尝试将redux提供程序、存储设置和reducer包装在功能组件中

例如:

从“React”导入React;
导入ReactDOM,{render}来自“ReactDOM”;
从'react redux'导入{Provider};
从“./src/App”导入应用程序;
从“redux”导入{createStore};
从“./src/reducers/team_reducer”导入减速机;
常量AppWrapper=({children})=>{
const store=createStore(reducer);
返回({children});
}

提供(

请与日志中的错误堆栈共享确切的错误消息请也共享reducer代码我已经编辑了post@realAlexBargesame错误,npm update为meI修复了它。感谢您的帮助。但它会给指向提供商的错误带来相同的错误。请检查此最小实现:您能重现错误吗?请确保恢复为所有依赖项添加日期。我试图重新创建它,但无法执行。它只显示我的项目中的错误。抱歉,如果无法复制,则无法真正帮助您。请确保使用
npm update
更新所有依赖项,和/或手动检查您是否使用最新版本。我不知道发生了什么。在我完成后,一切都开始工作npm安装了redux并再次响应redux。无论如何,感谢您尝试帮助我。
    index.js

    import React from 'react';
    import ReactDOM, {render} from 'react-dom';
    import { Provider } from 'react-redux';
    import App from "../src/App";
    import { createStore } from 'redux';
    import reducer from "../src/reducers/team_reducer";

    const store = createStore(reducer);
    render(<Provider store={store}> <App/> </Provider>, document.getElementById("root") )
   react.development.js:1590 Uncaught Error: Invalid hook call. Hooks can 
   only be called inside of the body of a function component. This could 
   happen for one of the following reasons:
   1. You might have mismatching versions of React and the renderer (such 
   as React DOM)
   2. You might be breaking the Rules of Hooks
   3. You might have more than one copy of React in the same app

  at resolveDispatcher (react.development.js:1590)
  at useMemo (react.development.js:1642)
  at Provider (Provider.js:10)
  at renderWithHooks (react-dom.development.js:16260)
  at mountIndeterminateComponent (react-dom.development.js:18794)
  at beginWork$1 (react-dom.development.js:20162)
  at HTMLUnknownElement.callCallback (react-dom.development.js:336)
  at Object.invokeGuardedCallbackDev (react-dom.development.js:385)
  at invokeGuardedCallback (react-dom.development.js:440)
  at beginWork$$1 (react-dom.development.js:25780)
  at performUnitOfWork (react-dom.development.js:24695)
  at workLoopSync (react-dom.development.js:24671)
  at performSyncWorkOnRoot (react-dom.development.js:24270)
  at scheduleUpdateOnFiber (react-dom.development.js:23698)
  at updateContainer (react-dom.development.js:27103)
  at react-dom.development.js:27528
  at unbatchedUpdates (react-dom.development.js:24433)
  at legacyRenderSubtreeIntoContainer (react-dom.development.js:27527)
  at render (react-dom.development.js:27608)
  at Module../src/index.js (index.js:11)
  at __webpack_require__ (bootstrap:785)
  at fn (bootstrap:150)
  at Object.1 (snackBar.js:37)
  at __webpack_require__ (bootstrap:785)
  at checkDeferredModules (bootstrap:45)
  at Array.webpackJsonpCallback [as push] (bootstrap:32)
  at main.chunk.js:1
  resolveDispatcher @ react.development.js:1590
  useMemo @ react.development.js:1642
  Provider @ Provider.js:10
  renderWithHooks @ react-dom.development.js:16260
  mountIndeterminateComponent @ react-dom.development.js:18794
  beginWork$1 @ react-dom.development.js:20162
  callCallback @ react-dom.development.js:336
  invokeGuardedCallbackDev @ react-dom.development.js:385
  invokeGuardedCallback @ react-dom.development.js:440
  beginWork$$1 @ react-dom.development.js:25780
  performUnitOfWork @ react-dom.development.js:24695
  workLoopSync @ react-dom.development.js:24671
  performSyncWorkOnRoot @ react-dom.development.js:24270
  scheduleUpdateOnFiber @ react-dom.development.js:23698
  updateContainer @ react-dom.development.js:27103
  (anonymous) @ react-dom.development.js:27528
  unbatchedUpdates @ react-dom.development.js:24433
  legacyRenderSubtreeIntoContainer @ react-dom.development.js:27527
  render @ react-dom.development.js:27608
  ./src/index.js @ index.js:11
  __webpack_require__ @ bootstrap:785
  fn @ bootstrap:150
  1 @ snackBar.js:37
  __webpack_require__ @ bootstrap:785
 checkDeferredModules @ bootstrap:45
 webpackJsonpCallback @ bootstrap:32
 (anonymous) @ main.chunk.js:1
 index.js:1 The above error occurred in the <Provider> component:
 in Provider (at src/index.js:11)

 Consider adding an error boundary to your tree to customize error handling 
 behavior.
 import React from "react";

 const in i State = {
 team_id : null,
 is Valid Signup : false
 }

 function reducer (state = in i State, action) {
 console.log("check ",state,action);

 switch(action.type) {
    case "ADD_TEAM" : return { team_id : action.team_id, is Valid Signup : 
 true };
    case 'NEW_TEAM' : return { team_id : null, is Valid Signup : true };
    default : return state;
  }
 }

 export default reducer;