当前位置: 首页 > 面试题库 >

使用react-redux时_react.default.createContext不是函数

卢鸿彩
2023-03-14
问题内容

将组件添加到入口点时出现问题,此错误立即在此处弹出,该如何解决?我也尝试仅添加Main组件,但无论如何我都会遇到该错误,在main.jsx中,仅带有渲染方法的类返回“
hello world”

_react.default.createContext is not a function



// App.jsx



import React from 'react';

import { render } from 'react-dom';

import { Provider } from 'react-redux';

import { BrowserRouter } from 'react-router-dom';



import 'react-select/dist/react-select.css';



import configureStore from './Data/store/configureStore';

import Main from "./Templates/Main/Main";



const store = configureStore();

render(

    <div>

        <Provider store={store}>

            <BrowserRouter>

                <Main/>

            </BrowserRouter>

        </Provider>

    </div>,

    document.getElementById('app-root')

);

Webpack配置

'use strict';

var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
  devtool: 'eval-source-map',
  entry: [
    'webpack-hot-middleware/client?reload=true',
    path.join(__dirname, 'src/app.jsx')
  ],
  resolve: {
    root: [
      path.resolve(__dirname, "src"),
    ],
    extensions: ['', '.js', '.jsx', '.css']
  },
  output: {
    path: path.join(__dirname, '/public/'),
    filename: '[name].js',
    publicPath: '/'
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: 'src/index.tpl.html',
      inject: 'body',
      filename: 'index.html'
    }),
    new webpack.optimize.OccurenceOrderPlugin(),
    new webpack.HotModuleReplacementPlugin(),
    new webpack.NoErrorsPlugin(),
    new webpack.DefinePlugin({
      'process.env.NODE_ENV': JSON.stringify('development')
    })
  ],
  module: {
    loaders: [{
      test: /\.jsx?$/,
      exclude: /node_modules/,
      loader: 'babel',
      query: {
        presets: ['es2015', 'react']
      }
    }, {
      test: /\.css$/,
      loader: 'style!css'
    }]
  }
};

和依赖

    "react": "^15.6.2",
    "react-addons-update": "^15.6.2",
    "react-bootstrap": "^1.0.0-beta.5",
    "react-dom": "^15.6.2",
    "react-helmet": "^5.2.0",
    "react-redux": "^6.0.0",
    "react-router": "^4.3.1",
    "react-router-dom": "^4.3.1",
    "react-select": "^1.0.0-beta13",
    "redux": "^4.0.1",
    "redux-thunk": "^2.3.0",
    "sequelize": "^3.20.0",
    "sqlite3": "^4.0.6"

Google建议将ract的版本升级到16,但是我认为这不是旧版本的问题。


问题答案:

react-redux v6.0.0使用由反应,以便为它提供工作新环境的API, 要么你需要降级react-reduxv5.x.x
升级react,并react-domv16.4以上

如果使用纱线,则可以运行

yarn upgrade react react-dom

否则,您可以运行npm

npm update react react-dom

您也可以在package.json中手动更改版本,然后运行yarn installnpm install



 类似资料:
  • 我试图做一个登录表单,它需要我迁移我的soloreac应用程序在反应redux应用程序。我面临许多错误,并坚持与。我是这方面的新手,任何帮助都会得到重视。 指数js文件 应用程序。js文件: 我得到这个错误。我不明白是什么文件或代码导致了这个错误。 类型错误:存储。getState不是新提供程序节点的函数\u modules/react redux/es/components/Provider。j

  • 问题内容: 我正在尝试在React中创建一个项目,并且正在使用Firebase。在我的react-redux- firebase项目中,有一行代码出错,但我无法解决。如何解决此“ TypeError:Object(…)不是函数” 我已经搜索了此问题,但无法解决该问题。 我正在关注一个React版本为16.4.1的教程。我不确定这是否是问题 index.js文件 如果我注释掉reatReduxFir

  • 问题内容: 我正在做一个React Redux的例子;但是,我遇到了一个问题,并出现以下错误: TypeError:this.props.tasks.map不是函数[了解更多] 我已经尝试了很多事情,但似乎无法理解为什么它不起作用。我相信是allReducers从Tasks函数映射任务的时候。我已经来回修复了此错误,但随后它会抱怨它是未定义的。我将解决此问题并循环回到此问题。任何帮助,将不胜感激。

  • 问题内容: 我有这个组成部分: 因为我想通过在我的上尝试新的React钩子提案,但出现了一个错误: 我做错什么了? 问题答案: 可能有很多原因,大多数是由于版本不兼容或使用in造成的: 1.确保和的版本相同 确保您还更新了该软件包,并且该软件包 的版本与相同。总的来说,应该与React团队一起更新它们的版本相同。 如果要安装React,请检查您没有使用,因为您将安装16.7,它没有钩子。 范例:

  • 我试图让一个简单的react-redux应用程序工作,但我遇到了一个奇怪的错误,我无法解决。我正在尝试简单地设置我当前用户的名字和处理商店,一个设置函数工作,而另一个不。 setCurrentUserFirstName-工作setCurrentUserHandle-不工作 我将它们作为操作放在useractions.js文件中 在减速器中 我有什么不对的?

  • 我有一个组件类,我正在使用react-redux将redux存储连接到该组件类,但是当我尝试将该组件传递到connect函数时,出现了一个错误。 以下是我正在使用的每个接口(redux发出的调度除外): IFileItemProps:组件将使用的所有类型 IFilePassedProps:这些是从父组件传递到组件的道具,所以我没有看到呈现的组件元素的键入问题。 IFileItemReduxStat

  • 问题内容: 我正在尝试学习React,并且是Java的初学者。现在,我正在开发一个从Flickr的API提取数据的应用程序。问题是,当我尝试在Main.js组件中的props上使用map方法时,出现错误消息“ Uncaught TypeError:this.props.photos.map不是函数”。在此处在Stackoverflow上搜索后,我认为问题在于this.props是javascrip

  • 和 Flux 类似,Redux 也是需要注册一个回调函数 store.subscribe(listener) 来获取 State 的更新,然后我们要在 listener 里面调用 setState() 来更新 React 组件。 Redux 官方提供了 react-redux 来简化 React 和 Redux 之间的绑定,不再需要像 Flux 那样手动注册/解绑回调函数。 接下来看一下是怎么做到