react.default.createContext는 react-redux를 사용할 때 함수가 아닙니다.
진입점에 컴포넌트를 추가할 때 문제가 발생하여 바로 이 오류가 나타납니다. 어떻게 수정해야 합니까?메인 컴포넌트만 추가하려고 합니다만, 어쨌든, main.jsx 의 return "hello world" 를 return 하는 render 메서드의 클래스에서는 에러가 발생합니다.
_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')
);
웹 팩 구성
'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
React에 의해 제공되는 새로운 컨텍스트 API를 사용하여 동작하려면 다운그레이드 또는 업그레이드 또는 그 이상으로 업그레이드해야 합니다.
실을 사용한다면, 달릴 수 있습니다.
yarn upgrade react react-dom
그렇지 않으면 npm을 사용하여 실행할 수 있습니다.
npm update react react-dom
패키지의 버전을 수동으로 변경할 수도 있습니다.json and runyarn install
또는npm install
react 및 react-dom을 업데이트하여 문제를 해결했습니다.
npm update react react-dom
그리고 물론 서버를 닫고 npm까지 재시작을 다시 시작합니다.
다른 코드를 가져오거나 사용할 때마다 다음을 사용하여 패키지를 최신 버전으로 업데이트해 보십시오.
npm update
React/React-dom 버전을 항상 확인합니다.특히 온라인 코스를 따르면서 프로젝트를 Import한 경우!!
또한 npm update까지 모든 패키지를 업데이트하지 않으려면 다음을 수행하십시오.
npm i react@latest react-dom@latest
도움이 됐으면 좋겠어!!
다음 버전으로 설치를 시도합니다.yarn add react-redux@5.0.5
나는 이 오류가 있었다.
_react.default.createContext is not a function
리액트 및 리액트돔을 최신 버전으로 업데이트했습니다.
npm update react react-dom
그리고 이것은 나의 문제를 해결했다.
버전 경합이었습니다.npm을 먼저 업데이트하고 npm 설치를 실행했습니다.주먹으로 해보겠습니다.
npm i npm@latest -g
그리고나서
npm install
react-dom 패키지 업그레이드가 가능 - 다음 중 하나를 사용해 보십시오(패키지 매니저에 따라 다름).
- npm 리액트돔 갱신
또는
- 실 업그레이드 리액트돔
언급URL : https://stackoverflow.com/questions/54521723/react-default-createcontext-is-not-a-function-when-using-react-redux
'programing' 카테고리의 다른 글
SQL 기본 제약 조건을 이름을 모르면서 삭제하는 방법 (0) | 2023.04.08 |
---|---|
SQL Server SELECT IN @variable? (0) | 2023.04.08 |
Jest가 모든 비동기 코드의 실행이 완료될 때까지 기다렸다가 어설션을 기대하는 방법 (0) | 2023.04.03 |
react.js와 Ajax의 차이점 (0) | 2023.04.03 |
AngularJS : jQuery로 변경 시 ng-model 바인딩이 업데이트되지 않음 (0) | 2023.04.03 |