Quiero enviar los datos de mi formulario y navegar a un archivo HTML con los valores de datos que se muestran dinámicamente.
Aquí está mi código en mi función app.post para express
const results = fs.readFile("order.html", "utf-8", (err, data) => { let output = data.replace("{%foodTotal%}", response.data.order_value); console.log("output", output); }); res.send(results);Entonces, después de enviar los datos de mi formulario de entrada, este código registrará todos mis datos en la consola.
Entonces mi consola en mi terminal se verá así
output <body> <h1>Thank you for buying!</h1> <p>Here are your details</p> <p>Food Total: $100.00</p> </body>Mi problema es que no sé cómo hacer que estos datos de console.log() aparezcan en mi navegador.
Aquí está el archivo order.html que estoy tratando de mostrar después de enviar mi formulario
<body> <h1>Thank you for buying!</h1> <p>Here are your details</p> <p>Food Total: {%foodTotal%}</p> </body>Y aquí está la aplicación. Obtener en mi archivo express
app.get("/order", (req, res) => { res.sendFile(path.join(__dirname, "order.html")); }); Si trato de cambiar mi res.send() a res.redirect('order') , solo mostrará mi HTML normalmente, pero no incluirá los valores actualizados de mi formulario cuando lo envíe
Mi objetivo es poder enviar mi formulario y mostrar mi archivo HTML order.html con datos como este en mi navegador y no en mi terminal
<body> <h1>Thank you for buying!</h1> <p>Here are your details</p> <p>Food Total: $100.00</p> </body>¿Es esto posible con archivos html normales? ¿O necesitaría usar algo como EJS?
Mi solución anterior fue codificar el HTML en mi archivo express.js, pero eso no parece correcto
En última instancia, necesitará algún tipo de plantilla.
La respuesta aceptada a esta pregunta detalla un motor de plantillas hecho a mano que sería adecuado para un caso de uso simple como el que usted describe.
A medida que su aplicación se vuelve más complicada, podría considerar la adopción de un motor de plantillas .