【发布时间】:2017-05-16 15:46:20
【问题描述】:
我想根据第一个中的选定值更改第二个选择列表。当我为每个选择做两个 Vue 实例时,它起作用了,但我想做一个小应用程序,这样它就更干净了。
types JSON 数组需要在 Vue JS 之外。您可以在小提琴中看到它。
不知何故,我只是不知道如何更新第二个选择列表。
在我做了这样的事情并且它完美地工作之前:
// methods of first select (category)
methods: {
update: function (value)
this.options = types[value]
}
}
...
// methods of second select (typselect)
methods: {
onChange(event) {
typselect.update(event.srcElement.value)
}
}
应用程序:
<div id="app">
<select v-model="category" v-on:change="onChange">
<option>Choose</option>
<option value="5">type1</option>
<option value="6">type2</option>
<option value="11">type3</option>
</select>
<select id="typselect">
<option v-for="option in options" v-bind:value="option.value">{{ option.text }}</option>
</select>
</div>
所以我把它换成这样的:
new Vue({
el: '#app',
data: {
category: '5'
},
computed: {
options: function(event) {
console.log('should be called on change');
let options = ''
options = 1;
// options = types[event.srcElement.value]; // this would be so easy...
return options
}
},
methods: {
onChange: function(e) {
console.log(event.srcElement.value);
this.options = this.options
}
}
})
但我只是不知道如何更新第二个选择列表。
【问题讨论】:
-
这有帮助吗? jsfiddle.net/mani04/Lgxrcc5p
标签: javascript vue.js vuejs2