我尝试使用显示所有国家/地区的v-select。所以我做了:
<v-select on-change="updateCountryId" label="country_name" :options="countries" ></v-select>
它工作得很好并显示我的国家但功能updateCountryId似乎不起作用
methods: {
updateCountryId: function() {
alert('ok');
}
}
但我从来没有看到好的
导入vue-select我做了:
<script src="/js/vue-select/vue-select.js"> </script>
我在twig文件中使用它,所以在我的vue-select.js中,我重写了我在https://unpkg.com/vue-select@1.3.3上找到的内容,但将{{}}替换为&lt; %%&gt;
ps:我已经尝试过v-on:change,@ change和onChange
我的代码看起来像那样(我跳过判断无用的东西)
<div id="General">
<div class="form-group">
<label>Pays :</label>
<v-select onChange="updateCountryId" label="country_name" :options="countries" ></v-select>
</div>
.
.
.
<script src="/js/vue-select/vue-select.js"> </script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.13/vue.min.js"></script>
<script>
Vue.config.delimiters = ['<%', '%>'];
Vue.component('v-select', VueSelect.VueSelect);
var vm = new Vue({
el: "#General",
data: {
countries: [],
},
filters: {
},
methods: {
updateCountryId: function () {
console.log('ok');
alert('ok');
},`
答案 0 :(得分:7)
你错过了冒号:
Vue.component('v-select', VueSelect.VueSelect);
new Vue({
el: '#app',
data: {
options: ['one', 'two', 'three'],
selected: ''
},
methods: {
updateCountryId: function() {
alert('ok');
}
}
});
&#13;
<script src="https://unpkg.com/vue@latest"></script>
<!-- use the latest release -->
<script src="https://unpkg.com/vue-select@latest"></script>
<div id="app">
<v-select :on-change="updateCountryId" label="country_name" :options="options" :searchable="false" ></v-select>
</div>
&#13;
您需要使用unpkg.com/vue-select@2.0.0,因为版本1与当前版本的Vuejs
答案 1 :(得分:1)
你可以这样做
<v-select :options="etat_nip" v-model="etat_nip_selected"></v-select>
并添加v-model&#34; etat_nip_selected&#34;在这样的观看
watch:{
'etat_nip_selected' : function (val, oldval) {
console.log(val);
}
},
答案 2 :(得分:0)
Vue.component('v-select', VueSelect.VueSelect);
new Vue({
el: '#app',
data: {
options: ['one', 'two', 'three'],
selected: ''
},
methods: {
updateCountryId: function() {
alert('ok');
}
}
});
<script src="https://unpkg.com/vue@latest"></script>
<!-- use the latest release -->
<script src="https://unpkg.com/vue-select@latest"></script>
<div id="app">
<v-select :on-change="updateCountryId" label="country_name" :options="options" :searchable="false" ></v-select>
</div>
答案 3 :(得分:0)
好吧,这确实让我有些头疼,似乎它在版本3上再次发生了变化。根据文档(https://vue-select.org/guide/upgrading.html#index-prop-replaced-with-reduce),他们删除了这3个函数:onChange,onInput,onSearch,赞成使用事件:@input
export default {
name: 'app',
methods: {
changedValue: function() {
alert("A new value was selected");
}
}
}
<v-select
options: ['one', 'two', 'three']
selected: ''
@input="changedValue" >
</v-select>
答案 4 :(得分:0)
当我使用 @input
而不是 @change