"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > React.js에서 양식 작성: 초보자 가이드

React.js에서 양식 작성: 초보자 가이드

2024-08-28에 게시됨
검색:877

Building Forms in React.js : A beginners guide

양식은 웹 애플리케이션에 필수적이며 사용자 상호 작용과 데이터 수집을 가능하게 합니다. React.js에서 양식 작성에는 효율성과 유지 관리성을 보장하기 위해 상태 관리 및 구성 요소 중심 아키텍처를 사용하는 작업이 포함됩니다. 이 가이드에서는 React.js에서 양식을 작성하여 애플리케이션을 강력하고 사용자 친화적으로 만드는 모범 사례를 다룹니다.
 

1. 제어되는 구성 요소 사용

 
제어되는 구성 요소는 React에서 양식 입력을 처리하는 데 선호되는 방법입니다. 양식 데이터를 구성 요소 상태로 유지하므로 관리 및 유효성 검사가 더 쉬워집니다.
 
모든 양식 입력 값을 상태에 저장합니다. 객체를 생성하고 모든 입력을 상태의 속성과 매핑합니다. 아래 예

import React, { useState } from 'react';

const MyForm = () => {


  const [formData, setFormData] = useState({ name: '', email: '' });

  const handleChange = (e) => {
    const { name, value } = e.target;
    setFormData({ ...formData, [name]: value });
  };

  const handleSubmit = (e) => {
    e.preventDefault();
    console.log(formData);
  };

return (
  
)} export default MyForm

2. 오류 처리

 
오류 처리 및 유효성 검사는 양식의 중요한 부분입니다. 사용자가 입력한 모든 값에 대해 오류를 검증하고 확인해야 하며 다음과 같은 모든 경우를 처리해야 합니다.

  • null/정의되지 않음 가져오기
  • 빈 값 가져오기
  • 잘못된 데이터 유형 등

사용자 경험을 향상하고 서버 부하를 줄여 결국 성능을 향상시키려면 클라이언트 측 유효성 검사를 구현해야 합니다. Yup과 같은 라이브러리나 사용자 정의 검증 로직을 활용하여 데이터 무결성을 보장하세요.

사용자 지정 유효성 검사 논리를 구현하는 방법을 살펴보겠습니다.

const validate = (formData) => {
  const errors = {};
  if (!formData.name) errors.name = 'Name is required';
  if (!formData.email) errors.email = 'Email is required';
  return errors;
};
const MyForm = () => {
  const [formData, setFormData] = useState({ name: '', email: '' });
  const [errors, setErrors] = useState({});
  const handleSubmit = (e) => {
    e.preventDefault();
    const validationErrors = validate(formData);
    if (Object.keys(validationErrors).length === 0) {
    console.log(formData);
    } else {
    setErrors(validationErrors);
  }
};
return (
  
{errors.name && {errors.name}} {errors.email && {errors.email}}
); };

 
작업의 편의를 위해 Yup 패키지를 사용하여 양식 데이터의 유효성을 원활하게 확인해야 합니다. React-Hook-Form이나 Formik과 같은 Form Libraries와 함께 사용되는 매우 인기 있는 패키지입니다.
네 문서: https://www.npmjs.com/package/yup
 

3. 타사 라이브러리 활용

 
Formik 및 React Hook Form과 같은 라이브러리는 양식 관리를 단순화하고 즉시 사용 가능한 강력한 기능을 제공하며 개발자가 보다 확장 가능하고 유연한 방식으로 양식을 쉽게 구축하고 검증할 수 있도록 해줍니다.

Formik 사용:

문서:- https://formik.org/docs/overview

import React from 'react';
import ReactDOM from 'react-dom';
import { Formik, Field, Form } from 'formik';


const BasicForm = () => (
   

Sign Up

{ await new Promise((r) => setTimeout(r, 500)); alert(JSON.stringify(values, null, 2)); }} >
); ReactDOM.render(, document.getElementById('root'));

실시간 Formik 데모를 확인하려면 클릭하세요.

결론

 
이러한 모범 사례를 따르면 React.js에서 양식을 작성하는 것이 간단하고 효율적일 수 있습니다. 상태 관리를 위해 제어된 구성 요소를 사용하고, 입력을 철저하게 검증하고, 타사 라이브러리를 활용하고, 적절한 스타일로 UX를 강화하고, 반응성이 뛰어나고 강력한 양식을 만들기 위해 성능을 최적화합니다.
이러한 지침을 준수하면 양식이 안정적이고 사용자 친화적이며 유지 관리 가능하도록 보장하여 사용자와 개발자 모두에게 원활한 경험을 제공할 수 있습니다.

릴리스 선언문 이 글은 https://dev.to/dualite/building-forms-in-reactjs-a-beginners-guide-11k1?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3