_react.default.createContext не является функцией при использовании response-redux

У меня проблема при добавлении компонентов в точку входа, тут сразу выскакивает эта ошибка, как исправить? Я также пытаюсь добавить только основной компонент, но в любом случае я беру эту ошибку, в 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"

Гугл советует обновиться до 16 рацты, но не думаю, что это проблема старой версии.


person Drop    schedule 04.02.2019    source источник


Ответы (7)


react-redux v6.0.0 использует новый контекстный API, предоставленный React, и для его работы необходимо либо понизить версию react-redux до v5.x.x, либо обновить react и react-dom до v16.4 или выше

Если вы используете пряжу, вы можете запустить

yarn upgrade react react-dom

еще с npm вы можете запустить

npm update react react-dom

Вы также можете вручную изменить версии в package.json и запустить yarn install или npm install

person Shubham Khatri    schedule 04.02.2019
comment
Ага, ну, поменяйте на старую версию, помогите react-redux! - person Drop; 04.02.2019
comment
Если возможно обновить реакцию, я посоветую вам это сделать, поскольку в более новых версиях есть ряд хороших функций. - person Shubham Khatri; 04.02.2019
comment
ага, а может и позже, для тестового задания 15 версии хватит :) - person Drop; 04.02.2019
comment
Круто, хоть и рада, что помогли - person Shubham Khatri; 04.02.2019
comment
Привет, @ShubhamKhatri. Я получаю эту ошибку, когда использую библиотеку response-i18n. В чем может быть проблема? - person Ashh; 18.09.2019
comment
@Ashh, можешь поподробнее рассказать о его версии. и будет ли его react-18next или react-i18n - person Shubham Khatri; 18.09.2019
comment
FFS, почему они все время должны что-то менять ??! ??? с ним невозможно работать - person Oliver Watkins; 27.05.2020
comment
В моем случае он работал и с react & react-dom версии 16.2. - person Kewal Shah; 28.05.2020
comment
Это исправляет ошибку, связанную с использованием response-transition-group v4.4.1 с react v16.0.0 и react-dom v16.0.0. Запуск обновления npm устранил проблему для меня. Спасибо. - person Webalation; 06.11.2020

Исправлена ​​проблема путем обновления response и react-dom

npm update react react-dom

И, конечно же, закрытие сервера и перезапуск с помощью npm start снова.

person Kamesh Kumar Singh    schedule 01.06.2020

Всякий раз, когда вы git pull или используете чей-то код, попробуйте обновить свой пакет до последней версии, используя:

npm update

всегда проверяйте версии React / React-dom, особенно если вы импортировали проект во время прохождения любого онлайн-курса !!

Кроме того, если вы не хотите обновлять все пакеты с помощью npm update, просто выполните:

npm i react@latest react-dom@latest

Надеюсь, это поможет !!

person Ashutosh Tiwari    schedule 08.06.2020

Попробуйте установить с этой версией: yarn add [email protected]

person user14529064    schedule 27.10.2020

у меня была эта ошибка

_react.default.createContext is not a function

затем я обновил response и response-dom до последней версии, используя

npm update react react-dom

и это решило мою проблему.

person Rohan Devaki    schedule 30.06.2020

для меня это был конфликт версий, я сначала обновил npm, затем запустил npm install, попробуйте кулак:

npm i npm@latest -g

тогда

npm install
person Djafer Abdelhadi    schedule 14.07.2020

У меня сработало обновление пакета response-dom - попробуйте любой из них (в зависимости от вашего диспетчера пакетов)

  • npm обновить реагировать на дом

OR

  • пряжа реагирует на апгрейд-дом
person Jayesh Mungara    schedule 12.03.2021