¿Cómo construir Love Calculator usando Node.js?

En este artículo, vamos a crear una calculadora de amor. Se utiliza una calculadora de amor para calcular el porcentaje de amor entre los socios. 

Funcionalidad:

  • Tomar el nombre del usuario
  • Tomar el nombre del socio del usuario
  • Mostrar el porcentaje de amor

Enfoque: Vamos a utilizar Body Parser mediante el cual podemos capturar los valores de entrada del usuario del formulario, como el nombre del usuario y el nombre de la pareja del usuario. Luego, calcularemos el porcentaje de ellos y enviaremos los datos de los pacientes a la página web usando EJS. EJS es un middleware que facilita el envío de datos desde su archivo de servidor (app.js o server.js) a una página web. 

Implementación: A continuación se muestra la implementación paso a paso del enfoque anterior.

Paso 1: Configuración del proyecto

Inicializa NPM: cree y ubique la carpeta de su proyecto en la terminal y escriba el comando

npm init -y

Inicializa nuestra aplicación de Node y crea un archivo package.json.

Instale dependencias: ubique el directorio de su proyecto raíz en la terminal y escriba el comando

npm install express ejs

Para instalar Express y Ejs como dependencias dentro de su proyecto

Crear archivo de servidor: cree un archivo ‘app.js’ , dentro de este archivo se requiere el módulo Express y cree una ‘aplicación’ constante para crear una instancia del módulo express, luego configure el EJS como el motor de visualización predeterminado.

const express = require('express');
const app = express();
app.set('view engine', 'ejs');

Reorganice sus directorios: se requiere usar ‘.ejs’ como extensión para el archivo HTML en lugar de ‘.html’ para usar EJS dentro de él. Luego, debe mover todos los archivos ‘.ejs’ en el directorio de vistas dentro de su directorio raíz. EJS busca por defecto los archivos ‘.ejs’ dentro de la carpeta de vistas.

Use la variable EJS: cree un ‘home.ejs’, dentro de ‘home.ejs’ debe usar variables EJS para recibir valores de su archivo de servidor. Puede declarar variables en EJS como

<%= variableName %>

HTML

<!DOCTYPE html>
<html>
  
<head>
    <title>Page Title</title>
</head>
  
<body>
    <%= variableName %>
</body>
  
</html>

Envíe datos a una variable: dentro de su archivo de servidor ( app.js o index.js ), puede enviar un archivo EJS junto con algunos datos utilizando el método de procesamiento.

app.get("/", (req, res) => {
    res.render("home", { variableName: "Hello Geeks!" })
})

Javascript

const express = require('express')
const app = express()
app.set('view engine', 'ejs')
  
app.get("/", (req, res) => {
    res.render("home", { variableName: "Hello Geeks!" })
})
  
app.listen(3000, (req, res) => {
    console.log("App is running on port 3000")
})

Obtener datos del formulario a app.js: para recibir valores de entrada de un formulario, tenemos que usar un paquete de Nodes llamado body-parser.

Instale el analizador de cuerpo:

npm install body-parser

Requerir módulo analizador de cuerpo:

const bodyParser = require('body-parser')

Y entonces:

app.use( bodyParser.json() );      
app.use(bodyParser.urlencoded({    
    extended: true
}));

Entonces podemos manejar los datos del formulario usando el objeto de solicitud.

Paso 2: Crear Funcionalidades: 

Tome el nombre del usuario y el nombre del socio del usuario: para esto, debemos crear un formulario dentro del archivo ‘home.ejs’ y manejar los datos del formulario dentro de nuestro archivo ‘app.js’ usando Body Parser.

<form action="/" method="post">
       <input type="text" name="username" placeholder="Your Name">
       <input type="text" name="partnername" placeholder="Your Partner Name">
       <button type="submit">Calculator</button>
</form>

Manejar datos de formulario dentro de ‘app.js’: tenemos que obtener valores de un formulario usando req.body.valueName y luego realizar la operación que se muestra a continuación para calcular un valor como un porcentaje. 

app.post('/', (req, res)=> {
   userName = req.body.username;
   partnerName = req.body.partnername;
   var combinedNames = userName + partnerName
   var lowerNames = combinedNames.toLowerCase()
   console.log(lowerNames);
   var t = lowerNames.split("t").length - 1;
   var r = lowerNames.split("r").length - 1;
   var u = lowerNames.split("u").length - 1;
   var e = lowerNames.split("e").length - 1;
   var firstDigit = t + r + u + e
   if (firstDigit < 5) {
       firstDigit = firstDigit + 5;
   }
   var l = lowerNames.split("l").length - 1;
   var o = lowerNames.split("o").length - 1;
   var v = lowerNames.split("v").length - 1;
   var e = lowerNames.split("e").length - 1;
   var secondDigit = l + o + v + e
   var lovePercentage = firstDigit + '' + secondDigit;
});

Enviar valor a la página ‘home.ejs’: Al igual que en el paso anterior, enviamos una string «¡Hola Geeks!» a la página de inicio, ahora enviemos el valor porcentual a una variable ‘lovePercentage’ .

res.render("home.ejs", {percentage:  lovePercentage});

Recibir valor de porcentaje de amor: para recibir el valor enviado desde ‘app.js’, debemos usar la variable ejs dentro de ‘ home.ejs’ .

<p>Love Percentage: <%= percentage %></p>

A continuación se muestra el código completo para construir Love Calculator usando Node.js:

aplicación.js

Javascript

const express = require('express');
const app = express();
app.set('view engine', 'ejs');
  
const bodyParser = require('body-parser')
  
app.use( bodyParser.json() );      
app.use(bodyParser.urlencoded({    
extended: true
}));
  
app.get('/', (req, res) => {
    res.render("home.ejs", {percentage:  ""});
});
  
app.post('/', (req, res)=> {
    userName = req.body.username;
    partnerName = req.body.partnername;
  
    var combinedNames = userName + partnerName
  
    var lowerNames = combinedNames.toLowerCase()
    console.log(lowerNames);
  
    var t = lowerNames.split("t").length - 1;
    var r = lowerNames.split("r").length - 1;
    var u = lowerNames.split("u").length - 1;
    var e = lowerNames.split("e").length - 1;
    var firstDigit = t + r + u + e
  
    if (firstDigit < 5) {
        firstDigit = firstDigit + 5;
    }
  
    var l = lowerNames.split("l").length - 1;
    var o = lowerNames.split("o").length - 1;
    var v = lowerNames.split("v").length - 1;
    var e = lowerNames.split("e").length - 1;
    var secondDigit = l + o + v + e
  
    var lovePercentage = firstDigit + '' + secondDigit;
  
    res.render("home.ejs", {percentage:  lovePercentage});
});
  
app.listen(3000);

casa.ejs

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Love Calculator</title>
</head>
<body>
    <form action="/" method="post">
        <input type="text" name="username" 
               placeholder="Your Name">
        <input type="text" name="partnername" 
               placeholder="Your Partner Name">
        <button type="submit">Calculator</button>
    </form>
    
      
<p>Love Percentage: <%= percentage %></p>
  
</body>
</html>

Pasos para ejecutar la aplicación: Dentro de la terminal, escriba el comando para ejecutar su script.

node app.js

Producción:

 

Publicación traducida automáticamente

Artículo escrito por devaadi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *