TypeError:Object(...)不是函数Reactjs 16.6.3

时间:2018-12-03 13:59:36

标签: reactjs

这是我的第一个使用钩子的reactjs应用程序,我遇到了错误

  

TypeError:Object(...)不是函数

,我的代码: index.js

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import * as serviceWorker from './serviceWorker';
import Test from './Test';

ReactDOM.render(<Test />, document.getElementById('root'));

serviceWorker.unregister();

Test.jsx

import React, {useState} from 'react';

export default function Test(props) {
  const [name, ChangeName] = useState('Zeyad');

  return (
    <div>
      <input
        value={name}
        onChange={(e) => ChangeName(e.target.value)}
      />
    </div>
  )
}

这是完整的错误: enter image description here

我不知道我的代码有什么问题吗?

2 个答案:

答案 0 :(得分:4)

useStateReactjs v16.6.3中不可用,您将必须升级到React v16.7.0-alpha

reactjs.org/docs/hooks-reference.html

答案 1 :(得分:1)

如果遇到此问题,只需升级到支持钩子的最新版本的react。 请注意,您需要库 react react-dom

从现在开始,

npm install react-dom@16.8.0-alpha.0
npm install react@16.8.0-alpha.0

请确保您具有正确的版本,这是reactreact-dom的可用版本列表

在此简介here

中了解有关此功能的更多信息