Ho appena iniziato a utilizzare Vue.js e mi trovo continuamente rivolto a jQuery per aiutare in determinate situazioni. Più di recente ho tentato di "innescare" (o emulare) un evento senza successo, ad esempio un evento clic o sfocatura.È possibile attivare eventi utilizzando Vue.js?
So che in jQuery è possibile effettuare le seguenti operazioni:
$('#my-selector').trigger('click');
Ma come può questo essere acheived utilizzando Vue.js? Sto volendo allontanarmi dall'uso di jQuery il più possibile.
Prendere il sotto come esempio:
<div id="my-scope">
<button type="button" v-on="click: myClickEvent">Click Me!</button>
</div>
<script>
new Vue({
el: "#my-scope",
data: {
foo: "Hello World"
},
methods: {
myClickEvent: function(e) {
console.log(e.targetVM);
alert(this.foo);
},
anotherRandomFunciton: function() {
this.myClickEvent();
}
}
});
</script>
Se dovessi chiamare anotherRandomFunciton, vorrei che per emulare (o trigger) l'evento click sopra. Tuttavia, cerco questo evento (o e nell'esempio precedente) non viene mai passato alla funzione.
Vue.js ha un metodo per raggiungere questo obiettivo?
Stai bene usando il javascript? – Luminous
Credo di sì, ma se è così posso anche usare jQuery. Ho pensato che forse ci fosse un modo migliore per farlo usando Vue.js –
Hai controllato i metodi di istanza? Sei in grado di chiamare eventi lì e ascoltare gli eventi in un modo più jQuery. http://vuejs.org/api/instance-methods.html – Luminous