React Js Part イベント処理とフォーム管理

Linda Hamilton
リリース: 2024-10-31 01:34:03
オリジナル
311 人が閲覧しました

React Js Part  Event Handling and Form Management

React シリーズへようこそ!前回の投稿では、React アプリケーションを構築するための基礎となる基本的な概念であるコンポーネント、状態、プロパティについて説明しました。この投稿では、React でのイベント処理とフォーム管理について説明します。これらの概念を理解すると、アプリケーションを対話型にしてユーザー入力に応答できるようにすることができます。

React でのイベント処理を理解する

React でのイベント処理は HTML や JavaScript でのイベント処理に似ていますが、いくつかの重要な違いがあります。 React では、イベントはキャメルケースを使用して名前が付けられ、関数をイベント ハンドラーとして渡します。

基本的なイベント処理:

簡単な例から始めましょう。ボタンのクリック イベントを処理する方法は次のとおりです:

import React from 'react';

function ClickButton() {
    const handleClick = () => {
        alert("Button clicked!!!");
    };

    return <button onClick={handleClick}>Click Me</button>;
}

export default ClickButton;
ログイン後にコピー

この例では、ボタンがクリックされると、handleClick 関数が実行され、アラートが表示されます。

パラメータを使用したイベントの処理
イベント ハンドラーにパラメーターを渡す必要がある場合は、アロー関数を使用できます。

function GreetingButton({ name }) {
    const handleClick = (name) => {
        alert(`Hello, ${name}!`);
    };

    return <button onClick={() => handleClick(name)}>Greet</button>;
}
ログイン後にコピー

ここで、handleClick 関数は名前パラメーターを受け取り、パーソナライズされた挨拶を表示します。

デフォルト動作の防止
フォームでは、送信時にデフォルトのアクション (ページのリロードなど) を回避したい場合がよくあります。これは、event.preventDefault() メソッドを使用して行うことができます。

function Form() {
    const handleSubmit = (event) => {
        event.preventDefault();
        alert("Form submitted!");
    };

    return (
        <form onSubmit={handleSubmit}>
            <button type="submit">Submit</button>
        </form>
    );
}
ログイン後にコピー

React でのフォーム処理

フォームは Web アプリケーションの一般的な部分であり、React でフォーム入力を管理するには、従来の HTML フォームと比較してわずかに異なるアプローチが必要です。

制御対象コンポーネントの例:

import React, { useState } from 'react';

function ControlledForm() {
    const [inputValue, setInputValue] = useState('');

    const handleChange = (event) => {
        setInputValue(event.target.value);
    };

    const handleSubmit = (event) => {
        event.preventDefault();
        alert(`Submitted: ${inputValue}`);
    };

    return (
        <form onSubmit={handleSubmit}>
            <input type="text" value={inputValue} onChange={handleChange} />
            <button type="submit">Submit</button>
        </form>
    );
}

export default ControlledForm;
ログイン後にコピー

この例では、入力値は inputValue 状態変数によって制御されます。 handleChange 関数は、ユーザーが入力フィールドに入力するたびに状態を更新します。

複数入力フォーム
コンポーネントの状態に値をオブジェクトとして保存することで、複数の入力を簡単に管理できます。

複数入力フォームの例:

import React, { useState } from 'react';

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

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

    const handleSubmit = (event) => {
        event.preventDefault();
        alert(`Name: ${formData.name}, Email: ${formData.email}`);
    };

    return (
        <form onSubmit={handleSubmit}>
            <input
                type="text"
                name="name"
                placeholder="Name"
                value={formData.name}
                onChange={handleChange}
            />
            <input
                type="email"
                name="email"
                placeholder="Email"
                value={formData.email}
                onChange={handleChange}
            />
            <button type="submit">Submit</button>
        </form>
    );
}

export default MultiInputForm;
ログイン後にコピー

この例では、formData 状態オブジェクトは名前と電子メールの両方の入力の値を保持します。 handleChange 関数は、入力の name 属性に基づいて適切なフィールドを更新します。


この投稿では、React でイベントを処理し、フォームを管理する方法を検討しました。ユーザー入力に応答する対話型アプリケーションを作成するには、これらの概念を理解することが重要です。

次回の投稿では、より高度なトピックについて掘り下げていきます。乞うご期待!

以上がReact Js Part イベント処理とフォーム管理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!