Lo siento, pero no encontré ningún problema similar en la web.
Aquí está mi problema, traté de hacer un formulario para ser contactado desde una aplicación.
Codifico con Vue.js 2 y TypeScript.
Así que aquí mi código: Mi plantilla:
<form ref="form" class="form-data" @submit.prevent="sendEmail"> <input type="text" name="name" v-model="name" class="name" placeholder="your firstname + lastname" /> <input type="email" name="email" v-model="email" class="email infos" placeholder="your email" /> <textarea class="message" name="message" v-model="message" placeholder=" your message"> </textarea> <input class="btn" type="submit" @click.prevent value="Contact me" /> </form>Mi guión:
<script lang='ts'> import { Component, Vue, } from 'vue-property-decorator'; import emailjs from 'emailjs-com'; @Component({ components: {}, }) export default class Contact extends Vue { private name = ''; private email = ''; private message = ''; public sendMail() { emailjs.sendForm( 'service_ID', 'template_ID', this.$refs.form, 'user_ID' ) .then((result) => { console.log('SUCCESS!', result.text); }, (error) => { console.log('FAILED...', error.text); }); this.name = '', this.email = '', this.message = '', } </script>Ya intento crear un objeto con mi valor de entrada en lugar de esto. $ ref... pero tengo un error sobre los argumentos "se esperaba 3-4 no 5".
Además, tengo un error de análisis con ESLint: "Expresión esperada".
Tengo error de tipo también:
"El argumento de tipo 'Vue | Element | (Vue | Element)[] | indefinido' no se puede asignar al parámetro de tipo 'cadena | HTMLFormElement'. El tipo 'indefinido' no se puede asignar al tipo 'cadena | HTMLFormElement'"
Espero que alguien pueda ayudarme. Gracias !
Debe iniciar sesión en emailjs y debe reemplazar los parámetros service_ID , template_ID y user_ID con sus datos en su cuenta de EmailJs.