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' 
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.
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.
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: