Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

288
Views
Error de Google App Script: no se puede leer la propiedad 'respuesta' de undefined y no se pudo enviar el correo electrónico: sin destinatario

Tengo un script simple que se ejecuta una vez que se envía el formulario. Es un script de prueba simple aplicado html para correo electrónico.

 function sendEmail(e) { //response //getRespondentEmail() var html = HtmlService.createTemplateFromFile("email.html"); var htmlText = html.getCode(); var emailTo = e.response.getRespondentEmail(); var subject = "Thanks for participating"; var textBody = "This email requries HTML support, please maek sure you open with a client taht support."; var options = { htmlBody: htmlText }; if(emailTo !== undefined){ GmailApp.sendEmail(emailTo,subject,textBody,options); //(recipient, subject, body, options) } }

Pero siempre notó TypeError: no se puede leer la propiedad 'respuesta' de indefinido.

 TypeError: Cannot read property 'response' of undefined (line 8, file "Code")

o la respuesta del correo electrónico de mi host decía 'Error al enviar el correo electrónico: sin destinatario' ingrese la descripción de la imagen aquí

No sé por qué no funciona, pero veo que alguien se aplicó con éxito a través del script de la aplicación de Google anterior.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

'e' indefinido:

TypeError: no se puede leer la propiedad 'respuesta' de undefined

Este error significa que el parámetro e no está definido. Lo que significa que esta función no se ejecuta a través del disparador.

Cuando los disparadores llaman a las funciones, a la función se le pasa un objeto de evento como argumento. Pero en otros contextos (por ejemplo, al ejecutar esto manualmente, desde el editor) este argumento no se pasa.

Por lo tanto, se supone que esta función se ejecuta automáticamente cuando los usuarios envían el formulario. No intente ejecutarlo manualmente desde el editor, si está usando e dentro de la función.

Sin destinatario:

No se pudo enviar el correo electrónico: sin destinatario

Esto significa que emailTo no está definido, lo que significa que getRespondentEmail() no devuelve nada.

Esto podría suceder por dos razones:

  • El script creó una respuesta de formulario, pero no se envió. Sin embargo, dado que esto se ejecuta a través de un activador de envío de formulario, no es su caso.
  • La otra razón, que probablemente sea lo que sucede aquí, es que no habilitó la opción para recopilar las direcciones de correo electrónico . Puede hacerlo mediante programación, llamando a Form.setCollectEmail(collect) o a través de la interfaz de usuario, siguiendo la guía en Recopilar las direcciones de correo electrónico de los encuestados .

Relacionado:

  • ¿Cómo puedo probar una función de disparo en GAS?
  • Objetos de evento
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!