¿Cómo puedo hacer que esto funcione sin usar una etiqueta de script dentro de html? Este es el código actual, funciona, pero quiero que el código provenga de una solicitud de publicación expresa.
EDITAR: si ejecuto como script dentro de html, el autor, el título, el texto y la fecha se publican correctamente. Si el código está dentro de Express, todo se publica excepto la fecha.
//html <form action="/blogs" method="post"> <input type="hidden" id="date" name="date"/> <script> const event = new Date(Date.now()); const options = { year: 'numeric', month: 'long', day: 'numeric' }; const today = event.toLocaleDateString('en-US', options) document.getElementById('date').value = today; </script> </form> //express app.post('/blogs', (req, res) => { const { author, title, text, date } = req.body; blogPosts.push({ author, title, text, date, }) res.send("New Post Added!") })Esto es lo que probé...
//express app.post('/blogs', (req, res) => { const event = new Date(Date.now()); const options = { year: 'numeric', month: 'long', day: 'numeric' }; const today = event.toLocaleDateString('en-US', options) const { author, title, text, date } = req.body; blogPosts.push({ author, title, text, date, today }) res.send("New Post Added!") })Actualización: el código de trabajo final. ¡Gracias Chris G!
app.post('/blogs', (req, res) => { const event = new Date(Date.now()); const options = { year: 'numeric', month: 'long', day: 'numeric' }; const date = event.toLocaleDateString('en-US', options) const { author, title, text } = req.body; blogPosts.push({ author, title, text, date }) res.send("New Post Added!") })Sé que hay muchos profesionales que verán esto y dirán "idiota", lo cual es justo, pero comprendan que recién estoy comenzando en la programación y ¡realmente me encanta hacer esto! Admiro a todos los expertos aquí y envidio su talento. Quiero aprender, no pedir un regalo de promoción o alguien que haga mi trabajo. Solo una explicación o alguien que me indique la dirección correcta sería más que suficiente. ¡Gracias por tu tiempo!