Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

580
Visualizações
Pasar datos del formulario Vue.js al script Nodemailer con Axios

Tengo algunos datos de formulario en uno de mis componentes de Vue que quiero pasar a mi secuencia de comandos de Nodemailer para que los datos puedan enviarse como un correo electrónico. Estoy tratando de usar Axios para hacer esto.

¡Sin embargo, no sucede nada ya que en realidad no sé lo que estoy haciendo!

El script de Nodemailer que configuré funciona cuando ejecuto el archivo en la línea de comandos. Lo que necesito es que se ejecute cuando se envíe el formulario en mi componente Vue.js.

Aquí está mi script de Nodemailer:

 "use strict"; const nodemailer = require("nodemailer"); require('dotenv').config(); // async..await is not allowed in global scope, must use a wrapper async function main() { // create reusable transporter object using the default SMTP transport let transporter = nodemailer.createTransport({ host: "smtp.gmail.com", port: 465, secure: true, // true for 465, false for other ports auth: { user: process.env.user, // generated ethereal user pass: process.env.password, // generated ethereal password }, }); // send mail with defined transport object let info = await transporter.sendMail({ from: process.env.user, // sender address to: process.env.email, // list of receivers subject: 'Translation Suggestion', // Subject line text: "Hello world?", // plain text body html: "<p>Traditional: <br> Simplified: <br> Pinyin: <br> English: " }); console.log("Message sent: %s", info.messageId); // Message sent: <b658f8ca-6296-ccf4-8306-87d57a0b4321@example.com> // Preview only available when sending through an Ethereal account console.log("Preview URL: %s", nodemailer.getTestMessageUrl(info)); // Preview URL: https://ethereal.email/message/WaQKMgKddxQDoou... } main().catch(console.error);

Y la función a la que se llama para enviar en mi componente de formulario:

 <button type="submit" @click="sendEmail" class="form__btn">Suggest</button> sendEmail () { axios.post("localhost:3000/send-translation-suggest-email", () => { this.traditional, this.simplified, this.pinyin, this.english }) }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Para crear una REST-API con express.js , primero inicialice un proyecto node.js ( npm init [-y] ). Luego instala express.js ( npm install express ).

Cuando tenga su configuración, puede crear un archivo index.js , el servidor. En él, tendrás que adaptar el contenido del ejemplo express Hello World , para que la ruta que acepte no sea GET / sino POST /send-translation-suggest-email . Luego, asegúrese de que su servidor escuche el puerto 3000 (como especificó en el código del lado del cliente).

En el oyente de POST /send-translation-suggest-email , puede llamar al método main desde su otro archivo (asegúrese de importar el archivo correctamente, con la sintaxis require de node.js ).

Luego, puede llamar al servidor backend desde el frontend como desee.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda