Estoy tratando de conseguir que el valor de entrada en keyup utilizando Vuejs 2 pero siempre obtener un resultado vacío como el de datos. Por favor, consulte el código de abajo.

HTML:

<input type="email" @keyup="this.$data.email= $event.target.value" class="form-control" id="email" placeholder="Username (your work email)">
<button type="button" class="btn btn-primary btn-block inactive" @click="submit">Log in</button>

Guión:

data () {
  return {
    email: '',
  }
},
methods: {
  submit () {
    alert(this.$data.email)
  }
}
InformationsquelleAutor claudios | 2017-07-26

2 Comentarios

  1. 7

    Usted necesita para hacer referencia a email (no this.$data.email):

    <input type="email" @keyup="email = $event.target.value" class="form-control" id="email" placeholder="Username (your work email)">
    

    Pero también, ¿por qué no utilizar v-model para enlazar email a la entrada?

    JS:

    new Vue({
      el: '#app',
      data () {
        return {
          email: '',
        }
      },
      methods: {
        submit () {
          alert(this.email)
        }
      }
    })

    HTML:

    <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.4.2/vue.min.js"></script>
    <div id="app">
      <input type="email" v-model="email" class="form-control" id="email" placeholder="Username (your work email)">
      <button type="button" class="btn btn-primary btn-block inactive" @click="submit">Log in</button>
    </div>

    • Gracias! por cierto ya he solucionado usando v-modelo.

Dejar respuesta

Please enter your comment!
Please enter your name here