2016-07-30 6 views
0

Ich bin neu in Vue, ich versuche, eine Ajax-Suche zu integrieren, wenn ein Keyup-Ereignis ausgelöst wird, habe ich versucht, den Wert zu drucken, aber es scheint wie Modell wird nur aktualisiert, wenn die Eingabe Element hat seinen Fokus verloren.Vue-Modell nur aktualisiert, wenn Eingabeelement Fokus verlieren

HTML

<input name="search" placeholder="Search" type="search" 
    @keyup="whenkeyup" @focus="searchResult" 
    @blur="hideResult" 
    v-model="searchvalue"> 
<button type="submit">&nbsp;</button> 
<span> 
{{ searchvalue }} 
</span> 

JS

var search = new Vue({ 
    el: '#header', 
    data: { 
     searchvalue :'', 
    }, 
    methods: { 
     whenkeyup: function() { 
      //ajax call 
      console.log(this.searchvalue); 

     } 
    } 
}); 
+1

i den Wert bekommen kann, $ event.target.value. Aber ich habe das Gefühl, dass das nicht der richtige Weg ist, Dinge zu tun. – Bijoy

+0

Zusätzlich zur @ gurghet-Antwort können Sie beim Implementieren der Ajax-Suche in vuejs das Attribut debouce für Ihre Eingabe angeben, um zu verhindern, dass ajax-Anforderungen zu häufig ausgelöst werden. ([vue-debounce] (https://vuejs.org/guide/forms.html#debounce)) – wonyeouuu

Antwort

1

sollten Sie die Änderung angeben statt keyup

Verwandte Themen