TypeError: Object (...) не является функцией React - PullRequest
0 голосов
/ 01 ноября 2018

Я учусь Реагировать с этого канала . Недавно я наткнулся на React Hooks с здесь . Итак, я попытался преобразовать основанный на классе компонент в основанный на хуке. Вот мой компонент на основе классов:

import React, { Component } from 'react';

class AddNinja extends Component {
    state = {
        name: null,
        age: null,
        skill: null,
    }
    handleChange = e => {
        this.setState({
            [e.target.id]: e.target.value,
        })
    }
    handleSubmit = e => {
        e.preventDefault();
        this.props.addNinja(this.state);
    }
    render() {
        return (
            <div>
                <form onSubmit={ this.handleSubmit }>
                    <label htmlFor="name">Name: </label>
                    <input type="text" id="name" onChange={ this.handleChange } />

                    <label htmlFor="age">Age: </label>
                    <input type="number" id="age" onChange={ this.handleChange } />

                    <label htmlFor="skill">Skill: </label>
                    <input type="text" id="skill" onChange={ this.handleChange } />

                    <button>Submit</button>
                </form>
            </div>
        )
    }
}

Вот мой преобразованный компонент: https://codesandbox.io/s/n0lw4wo550?module=%2Fsrc%2FAddNinja.js

Но я получаю следующую ошибку:

enter image description here

1 Ответ

0 голосов
/ 01 ноября 2018

Крючки React доступны в React v16.8.0. обновил вашу реакцию "Отреагируй" на 16.8.0.

"react": "16.8.0",
"react-dom": "16.8.0",  

Вот ваш код с обновленной версией: https://codesandbox.io/s/qq90900xr4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...