Soy nuevo en programación y actualmente estoy aprendiendo node.js y express.js
Tengo un formulario para que el usuario se comunique conmigo cuando lo envíe, debería abrir la aplicación de correo de Windows, en javascript solo puedo usar document.createElement('a')
pero cuando lo uso en node.js dice que 'document' is not defined o createElement is not a function
He intentado usar jsdom
Aquí está el código js:
app.post('/contact-me', function(req, res) { let name = req.body.userName let email = req.body.userEmail let phone = req.body.userPhoneNumber let subject = req.body.userSubject let message = req.body.userMessage let form = req.body.contact / let contact = { name, email, phone, subject, message } let openMail = new JSDOM(contact) //I've also tried let openMail = new JSDOM(form) let myEmail = "dev@mail.com" let a = openMail.window.document.createElement('a') a.href = `mailto:${myEmail}?subject=${subject}&body=Hello, my name is ${name}, ${subject}, ${message}` a.click() })` Etiqueta de apertura de formulario: <form class="form-container" action="/contact" method="POST" name="contact">
Pero dice:
Error: Not implemented: navigation (except hash changes) at module.exports (D:\folder\node_modules\jsdom\lib\jsdom\browser\not-implemented.js:9:17) at navigateFetch (D:\folder\node_modules\jsdom\lib\jsdom\living\window\navigation.js:77:3) at exports.navigate (D:\folder\node_modules\jsdom\lib\jsdom\living\window\navigation.js:55:3) at Timeout._onTimeout (D:\folder\node_modules\jsdom\lib\jsdom\living\nodes\HTMLHyperlinkElementUtils-impl.js:81:7) at listOnTimeout (node:internal/timers:559:17) at processTimers (node:internal/timers:502:7) undefined¿Node.js tiene un código diferente o tengo que hacer algo antes de usar DOM?