我使用Vue 2.6,并具有以下代码。它用作工具栏的一部分,以执行一些webservice-requests。
<div class="container-fluid" id="issuesite">
....
<ul>
<li><mycomponent textid="closetext" defaulttext="close the issue" v-on:click="close"></mycomponent></li>
</ul>
并尝试将函数放在组件和父实例中的两个位置:
site.js(全局javascript文件)
Vue.component('mycomponent',
{
props: ['textid', 'defaulttext', 'id'],
mixins: [keyboardShortcutMixin],
template: '<button :id="id" v-on:click="close">Press</button>',
methods: {
close: function (event) {
alert('test');
}
},
created: function () {
this.testShortcutCache(this.textid, guiElement.text);
}
});
issue.js
var app = new Vue({
el: '#issuesite',
name: 'issueapp',
methods: {
close: function(event) {
alert('test');
}
},
created: function() {
console.log('test');
}
});
事件参数只是一个猜测-因为我尝试了没有任何参数的情况-结果相同。
vue代码用作ASP.NET MVC项目的一部分,并且在应用程序的其他部分工作正常。