Search
 
SCRIPT & CODE EXAMPLE
 

JAVASCRIPT

react users list modal

import React, { useState } from "react";

//ProductsData
import { ProductData } from "../products/data";

const Products = () => {
  const [showModal, setshowModal] = useState(false);
  const [hasClass, changeClass] = useState({
    activeObject: null,
    objects: ProductData.map((product) => {
      return product.id;
    }),
  });

  function toggleActive(index) {
    setshowModal(true);
    changeClass({ ...hasClass, activeObject: hasClass.objects[index] });
  }

  function toggleActiveClass(index) {
    if (hasClass.objects[index] === hasClass.activeObject) {
      return "active";
    } else {
      return "inactive";
    }
  }

  const Details = (ProductData) => (
    <div id="productModal" className={toggleActiveClass()}>
      <div className="product-img-holder">
        <img src={product.image} alt="img" />
      </div>
      <div className="product-details">
        <span className="list-title">
          {product.name}
          <br /> <span>{product.subtitle}</span>
        </span>
        <span className="list-grams">{product.grams}</span>
        <span className="list-price">{product.price}</span>
        <span className="list-desc">{product.desc}</span>
        <span className="list-cart">{product.cart}</span>
      </div>
    </div>
  );

  return (
    <>
      <ul className="list-menu">
        {ProductData.map((product, index) => (
          <li
            key={index}
            onClick={() => toggleActive(index)}
            className={toggleActiveClass(index)}
          >
            <span className="list-title">
              {product.name} <br /> <span>{product.subtitle}</span>
            </span>
            <span className="list-grams">{product.grams}</span>
            <span className="list-price">{product.price}</span>
          </li>
        ))}
      </ul>
      {showModal ? <Details /> : null}
    </>
  );
};

export default Products;
 Run code snippet
Comment

PREVIOUS NEXT
Code Example
Javascript :: react mui pagination change text color site:stackoverflow.com 
Javascript :: javascript goto or redirect to page 
Javascript :: magnetic button vanilla js 
Javascript :: prisma get single data query 
Javascript :: react readmore 
Javascript :: Backbone View Template 
Javascript :: get images from mysql with php jquery ajax and display them in html page inside DIVs 
Javascript :: var logEvenNums = function(num) {}; 
Javascript :: required field in javascript dynamically 
Javascript :: react creating function to call API in app: calling APIs after render w error message 
Javascript :: remove T from datetime in js 
Javascript :: Proper Way To Access Model(s) Data From Collection In Backbone 
Javascript :: A Note on Jest & React 
Javascript :: How to Check if an Item is in an Array in JavaScript Using Array.includes() Starting From a Specified Index 
Javascript :: filter function in javascript 
Javascript :: responsive navbar react 
Javascript :: editor convert jquery code to javascript 
Javascript :: mounting in react 
Javascript :: moment max 
Javascript :: how to upload file in node js 
Javascript :: nextjs apollo 
Javascript :: template literal 
Javascript :: Run FEnvQueryRequest 
Javascript :: optional css tippy 
Javascript :: react props class based static proptypes 
Javascript :: javascript WeakMaps Are Not iterable 
Javascript :: javascript statements 
Javascript :: jquery callback functions 
Javascript :: jQuery Prevent Submit on Enter Key Except in Textarea 
Javascript :: Json to npy file 
ADD CONTENT
Topic
Content
Source link
Name
4+4 =