how to use objects with useState() in functional components

PHOTO EMBED

Wed Feb 10 2021 15:39:12 GMT+0000 (Coordinated Universal Time)

Saved by @arhan #javascript,react.js,javascript #javascript,react.js

import React, { useRef, useState } from "react";

import PropTypes from "prop-types";

const App = () => {
  let firstRef = useRef(null),
    middleRef = useRef(null),
    lastRef = useRef(null);

  const [name, setName] = useState({
    firstName: "",
    middleName: "",
    lastName: "",
  });

  const firstN = () => {
    setName({ ...name, firstName: firstRef.current.value });
  };

  const middleN = () => {
    setName({ ...name, middleName: middleRef.current.value });
  };

  const thirdN = () => {
    setName({ ...name, lastName: lastRef.current.value });
  };

  return (
    <React.Fragment>
      <Name first={name.firstName} middle={name.middleName} last={name.lastName} />
      <Name first={name.firstName} middle={name.middleName} last={name.lastName} />
      <input type="text" ref={firstRef} onChange={firstN} />
      <input type="text" ref={middleRef} onChange={middleN} />
      <input type="text" ref={lastRef} onChange={thirdN} />
    </React.Fragment>
  );
};

export default App;

export const Name = ({ first, middle, last }) => {
  return (
    <>
      <h2>
        My name is {first} {middle} {last}
      </h2>
    </>
  );
};

Name.propTypes = {
  first: PropTypes.string,
  middle: PropTypes.string,
  last: PropTypes.string,
};
content_copyCOPY

while practice during my personal project

personal vscode editor