【React × TypeScript】在父组件中使用子组件的值

在父组件中使用子组件的值

Background

    • ログインページを作成するときにUIとロジックでコンポーネントを分けたいと思ったため。

 

    親コンポーネントでユーザーネームを使用したい、子コンポーネントでユーザー名を入力するInputを使用したい。

原件

import React, { useState } from "react";
import LoginUI from "./LoginUI";

const Login = () => {
  const [userName, setUserName] = useState('');
  console.log(userName);

  const onUserNameChange = (value: string) => {
    setUserName(value);
  };
    return (
        <>
            {/* ログインUI */}
            <LoginUI userName={userName} onUserNameChange={onUserNameChange}/>
        </>
    );
}

export default Login;

子组件

import React from 'react';
import { Input } from '@nextui-org/react';

interface LoginProps {
  userName: string;
  onUserNameChange: (value: string) => void;
}

const LoginUI = ({ userName, onUserNameChange }: LoginProps) => {
  const handleNameChange = (
    event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>
  ): void => {
    const value = event.target.value;
    onUserNameChange(value);
  };

  return (
    <>
      <Input
        labelPlaceholder="ユーザー名"
        onChange={handleNameChange}
      />
    </>
  );
};

export default LoginUI;


广告
将在 10 秒后关闭
bannerAds