【发布时间】:2019-05-25 16:55:34
【问题描述】:
我使用 Select 作为 Vue 组件并将其定义为模板。我正在定义组件数据和道具。
var MyComponent = Vue.component('my-component',{
template: "<select v-on:change=\"onAppSelected\" \n"+
"v-model:value=\"appId\"> \n"+
"<option v-for=\"appChoice in appChoices\" \n"+
"v-bind:value=\"appChoice.id\">{{appChoice.name}} \n"+
"</option> \n"+
"</select>",
methods: {
onAppSelected:function(event){
console.log("On Change Called:", this.item.serial)
console.log("Event Target:",event.target.value)
},
setValue: function(selValue) {
this.appId = selValue;
},
},
});
如果手动从下拉列表中选择选项,则会调用模板中使用 v-on:change 定义的函数 onAppSelected。
但是,如果从方法 setValue 设置 Select 的值,则不会触发该功能 onAppSelected。
setValue 方法是从外部按钮调用的。
jquery lib .trigger("change") 在这种情况下也没有帮助。
添加了 js fiddle 中完整实现的链接以供测试。 检查控制台中的输出。
任何人都可以帮助我解决这个问题。 提前感谢您阅读我的问题。
【问题讨论】:
标签: javascript vue.js vue-component