Search
 
SCRIPT & CODE EXAMPLE
 
CODE EXAMPLE FOR JAVASCRIPT

pass props in compound component

//parent

const Parent = ({ children }) => {
  const [checked, setChecked] = useState(false);

  const allChildren = React.Children.map(children, (child) => {
    const clone = React.cloneElement(child, {
      checked,
      setChecked,
    });
    return clone;
  });
  return allChildren;
};

//child
const Child = ({  checked, setChecked }) => {
  return (
    <div onClick={() => setChecked(!checked)} style={{ color: "red" }}>
      child content
    </div>
  );
};

//app
<Parent>
    <Child /> 
</Parent>
 
PREVIOUS NEXT
Tagged: #pass #props #compound #component
ADD COMMENT
Topic
Name
5+3 =