import { useState, useEffect } from "react"; export default function Builder() { const [products, setProducts] = useState([]); // Available products from the API const [build, setBuild] = useState([]); // User's selected parts const [loading, setLoading] = useState(true); // Fetch available products on page load useEffect(() => { async function fetchProducts() { try { const response = await fetch("/api/products"); // Replace with your actual API endpoint const data = await response.json(); setProducts(data); setLoading(false); } catch (error) { console.error("Error fetching products:", error); setLoading(false); } } fetchProducts(); }, []); // Add a product to the build const addToBuild = (product) => { setBuild((prevBuild) => [...prevBuild, product]); }; // Remove a product from the build const removeFromBuild = (productId) => { setBuild((prevBuild) => prevBuild.filter((item) => item.id !== productId)); }; return (
Loading products...
) : ({product.description}
${product.price}
No parts added yet. Start building your firearm!
) : (