Creación de una calculadora de IMC con React
El índice de masa corporal (IMC) es una métrica ampliamente utilizada para determinar si una persona tiene un peso corporal saludable para una altura determinada. En este blog, veremos la creación de una calculadora de IMC simple pero funcional usando React. Este proyecto permite a los usuarios ingresar su peso y altura para calcular su IMC y proporciona una clasificación basada en el resultado.
La Calculadora de IMC es una aplicación web responsiva creada con React. Toma el peso del usuario (en kilogramos) y la altura (en centímetros) como entradas y calcula el IMC. Luego, la aplicación muestra el IMC calculado junto con la clasificación de peso correspondiente, como bajo peso, peso normal, sobrepeso u obesidad.
Aquí hay una breve descripción general de la estructura del proyecto:
src/ │ ├── assets/ │ └── images/ │ └── BMI Logo.png ├── components/ │ └── BmiCalculator.jsx ├── App.jsx ├── App.css └── index.css
Este componente es el corazón de la aplicación. Maneja las entradas del usuario, realiza el cálculo del IMC y muestra el resultado.
import { useState } from "react"; import logoImg from "../assets/images/BMI Logo.png"; const BmiCalculator = () => { const [weight, setWeight] = useState(""); const [height, setHeight] = useState(""); const [bmi, setBMI] = useState(""); const [result, setResult] = useState(""); function calculateBMI(weight, height) { const heightM = height / 100; const bmiResult = weight / (heightM * heightM); setBMI(bmiResult.toFixed(2)); // Round to 2 decimal places if (bmiResult { if (weight && height) { calculateBMI(weight, height); } }; return (); }; export default BmiCalculator;Weight (kg)
setWeight(e.target.value)} />Height (cm)
setHeight(e.target.value)} />Your BMI : {bmi}
Result : {result}
El componente App sirve como contenedor principal, envolviendo el componente BmiCalculator y agregando un encabezado y pie de página.
import BmiCalculator from "./components/BmiCalculator"; import "./App.css"; const App = () => { return (); }; export default App;BMI Calculator
Made with ❤️ by Abhishek Gurjar
El CSS garantiza que la aplicación sea visualmente atractiva y responsiva.
* { box-sizing: border-box; } body { margin: 0; padding: 0; font-family: sans-serif; background-color: #008f7d; color: white; } .app { display: flex; flex-direction: column; align-items: center; justify-content: space-between; margin-top: 30px; } .header { text-align: center; font-size: 18px; } .bmi-container { margin: 40px; width: 500px; height: 430px; background-color: white; color: black; border-radius: 15px; display: flex; flex-direction: column; align-items: center; justify-content: center; box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px; } .logo img { width: 50px; height: 50px; margin: 15px; } .input-box { display: flex; flex-direction: column; align-items: center; } .input-box h4 { color: gray; } .weight-input, .height-input { display: flex; align-items: center; justify-content: space-between; gap: 25px; } .weight-input input, .height-input input { height: 27px; width: 180px; font-weight: 400; font-size: 14px; border-radius: 7px; } .btn { margin: 15px; width: 65%; height: 10%; display: flex; align-items: center; justify-content: center; background-color: #087fff; color: white; border: 0.5px solid black; border-radius: 7px; } .btn:hover { background-color: #2570c1; } .output-box { margin-top: 20px; width: 65%; height: 15%; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; background-color: #e2e2e2; color: black; border-radius: 7px; border: 1px solid black; } .output-box p { margin-left: 20px; line-height: 0; } .footer { text-align: center; font-size: 14px; }
Para ejecutar la Calculadora de IMC en su máquina local, siga estos pasos:
git clone https://github.com/abhishekgurjar-in/Bmi_Calculator.git
npm install
npm start
La aplicación debería abrirse en su navegador web predeterminado en http://localhost:3000.
Vea la demostración en vivo de la Calculadora de IMC aquí.
En este proyecto, creamos una calculadora de IMC simple pero efectiva usando React. Este proyecto demuestra el uso de la gestión de estado de React, la representación condicional y el estilo básico para crear una interfaz fácil de usar. Ya sea que recién estés comenzando con React o quieras practicar tus habilidades, este proyecto es una excelente manera de adquirir experiencia práctica.
Abhishek Gurjar es un desarrollador web apasionado que se centra en la creación de aplicaciones web intuitivas y responsivas. Sigue su viaje y explora más proyectos en GitHub.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3