React, State 사용하기

2024. 12. 11. 15:57웹 개발

EventPractice.js

import React, { useState } from 'react';

const EventPractice = () => {
    const [form, setForm] = useState({ username: '', message: '' });

    const onChange = (e) => {
        // 기존의 form 내용을 이 자리에 복사 한 뒤 원하는 값을 덮어 씌우기, 스프레드 연산자
        const nextForm = { ...form, [e.target.name]: e.target.value }
        setForm(nextForm);
    };

    const onClick = () => {
        alert(`${form.username}: ${form.message}`);
        setForm({ username: '', message: '' });
    };

    const onKeyPress = (e) => {
        if (e.key === 'Enter') onClick();
    };

    return (
        <div>
            <h1>이벤트 연습</h1>
            <input
                type="text"
                name="username"
                placeholder="유저명"
                value={form.username}
                onChange={onChange}
            />
            <input
                type="text"
                name="message"
                placeholder="아무거나 입력해보세요"
                value={form.message}
                onChange={onChange}
                onKeyPress={onKeyPress}
            />
            <button onClick={onClick}>확인</button>
        </div>
    );
};

export default EventPractice;

 

결과

'웹 개발' 카테고리의 다른 글

React, useState, Counter.js  (0) 2024.12.13
React, Vite + 리액트 프로젝트 시작하기  (1) 2024.12.13
React, propTypes 를 통한 prop 검증  (0) 2024.12.11
React, useFetch 커스텀 훅  (0) 2024.12.09
React, useWindowSize 커스텀 훅  (1) 2024.12.09