telnov_magic
@telnov_magic
Между небом и омутом, между серпом и молотом

Как обновить значение в стейте используя React Hooks?

Здравствуйте. Решил углубиться в хуки. И передо мной встал вопрос. Если, используя классовый компонент, для того чтобы получить значение из инпута я делал так:

import React, {Component} from 'react';
class Test extends React.Component {
    constructor() {
        super();

        this.state = {
            someValue : ''
        };
    };

    handleInput = event => {
        this.setState({someValue : event.target.value});
    };

    render() {
        return (
            <input type="text" onInput = {this.handleInput}/>
        )
    }
}


то как это сделать используя хук состояния?
Я написал такой компонент:
const MyPosts = props => {
    const [newPost, useNewPost] = useState('');

    const handleInput = event => useNewPost(event.target.value);
    const addPost = () => {
        console.log(newPost);
    };

    return ( 
        <div>
            <textarea onInput = {HandleInput}></textarea>
            <p onClick = {addPost}>Добавить</p>
         </div>

но Реакт ругается на то, что хуки нельзя использовать внутри других js функций. Как быть в такой ситуации? Как решить такую простую задачку используя идеологию хуков?
  • Вопрос задан
  • 190 просмотров
Решения вопроса 1
@curious-101
Frontend developer
Линтер ругается на useNewPost, так как это не хук, то его стоит переименовать, например, в setNewPost
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы