Advertisement
cindex1a

inndex.js

Feb 22nd, 2021
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import React, { useState } from "react";
  2. import propTypes from "prop-types";
  3.  
  4. export default function Stepper(props) {
  5.   const { steps, initialStep } = props;
  6.   const stepKeys = Object.keys(steps);
  7.   const [CurrentStep, setCurrentStep] = useState(
  8.     stepKeys.indexOf(initialStep) > -1 ? initialStep : stepKeys[0]
  9.   );
  10.   const totalStep = stepKeys.length;
  11.   const indexStep = stepKeys.indexOf(CurrentStep);
  12.  
  13.   function prevStep() {
  14.     if (+indexStep > 0) setCurrentStep(stepKeys[indexStep - 1]);
  15.   }
  16.  
  17.   function nextStep() {
  18.     if (+indexStep < totalStep) setCurrentStep(stepKeys[indexStep + 1]);
  19.   }
  20.  
  21.   return <>{props.children(prevStep, nextStep, CurrentStep, steps)}</>;
  22. }
  23.  
  24. Stepper.propTypes = {
  25.   data: propTypes.object.isRequired,
  26.   initialStep: propTypes.string,
  27. };
  28.  
  29. //index.js pada stepper
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement