Vue.jsはclick
やmousedown
のようなブラウザイベントでうまくいきます。しかし、カスタムイベントではまったく動作しません。ここでは、コードは次のようになります。Vue.jsのカスタムイベントを聞く
HTML:
<div id="app" style="display: none" v-show="true">
<div v-el:ping v-on:ping="ping">
<div>
<button v-on:click="click">Click</button>
</div>
</div>
</div>
はJavaScript:
new Vue({
el: '#app',
data: {
},
methods: {
ping: function (event) {
console.log('Vue ping', event);
alert('Vue ping');
},
click: function (event) {
jQuery(event.target).trigger('ping');
}
},
ready: function() {
console.log(this.$els);
jQuery(this.$els.ping).on('ping', function (event) {
console.log('jQuery ping', event);
alert('jQuery ping');
});
}
});
私はVue ping
とjQuery ping
と警告し期待しています。しかし、後の方だけがポップアップします。
コードの問題はどこですか? – Gintoki
@John '' ping''メソッド( '' alert( 'Vue ping') '')は呼び出されません – vbarbarosh