TypeError: react__WEBPACK_IMPORTED_MODULE_0___default(...) is not a function
TypeError: react__WEBPACK_IMPORTED_MODULE_0___default(...) is not a function
我正在使用 React 中的上下文 API 制作待办事项应用程序。在启动开发服务器时,它会抛出错误:
TypeError: react__WEBPACK_IMPORTED_MODULE_0___default(...) 不是函数
我是 React 的初学者,找不到任何可能导致此问题发生的原因。这是我的 App.js
:
import React, {useReducer} from 'react';
import Container from "reactstrap/lib/Container";
import "bootstrap/dist/css/bootstrap.min.css";
import './App.css';
import {TodoContext} from './Context/TodoContext';
import todoReducer from "./Context/reducer";
const App = () => {
const [todo, dispatch] = useReducer(todoReducer, [])
return(
<TodoContext.Provider value={{todo, dispatch}}>
<Container fluid>
<h1>
Todo App with Context API
</h1>
</Container>
</TodoContext.Provider>
)
}
export default App;
我正在为 react
和 react-dom
使用 ^16.3.1
在您的 TodoContext.js
中,您错误地导入了 createContext
。而不是
import createContext from 'react';
你应该使用
import { createContext } from 'react';
用方括号导入 createContext
这样 React 就知道你正在使用函数而不是整个函数。这样你就可以实际导出函数了。这是您的代码中出现错误的地方。如果你不这样做,那么 React 就不会认为 createContext
是一个函数。
我正在使用 React 中的上下文 API 制作待办事项应用程序。在启动开发服务器时,它会抛出错误:
TypeError: react__WEBPACK_IMPORTED_MODULE_0___default(...) 不是函数
我是 React 的初学者,找不到任何可能导致此问题发生的原因。这是我的 App.js
:
import React, {useReducer} from 'react';
import Container from "reactstrap/lib/Container";
import "bootstrap/dist/css/bootstrap.min.css";
import './App.css';
import {TodoContext} from './Context/TodoContext';
import todoReducer from "./Context/reducer";
const App = () => {
const [todo, dispatch] = useReducer(todoReducer, [])
return(
<TodoContext.Provider value={{todo, dispatch}}>
<Container fluid>
<h1>
Todo App with Context API
</h1>
</Container>
</TodoContext.Provider>
)
}
export default App;
我正在为 react
和 react-dom
^16.3.1
在您的 TodoContext.js
中,您错误地导入了 createContext
。而不是
import createContext from 'react';
你应该使用
import { createContext } from 'react';
用方括号导入 createContext
这样 React 就知道你正在使用函数而不是整个函数。这样你就可以实际导出函数了。这是您的代码中出现错误的地方。如果你不这样做,那么 React 就不会认为 createContext
是一个函数。