Select 单击“在vue上选择”中的选项时如何获取值?

Select 单击“在vue上选择”中的选项时如何获取值?,select,vue.js,vuejs2,vue-component,Select,Vue.js,Vuejs2,Vue Component,我的vue组件如下所示: <template> ... <small class="text-muted">Quality</small><br> <b-form-select class="mb-2 mr-sm-2 mb-sm-0" :options="optQuality" v-model="slcQuali

我的vue组件如下所示:

<template>
    ...
        <small class="text-muted">Quality</small><br>
        <b-form-select class="mb-2 mr-sm-2 mb-sm-0"
                       :options="optQuality"
                       v-model="slcQuality" @change="changeQuality">
        </b-form-select>
    ...
</template>
<script>
    export default {
        ...
        data () {
            return {
                optQuality: [
                    { value: 1, text: 'Original' },
                    { value: 2, text: 'Kw-1' },
                    { value: 3, text: 'Kw-2' }
                ],
                slcQuality: 1
            }
        },
        methods: {
            changeQuality() {
                console.log('test')
                console.log(this.slcQuality)
            }
        }
    }
</script>
如果我选择选项Kw-1,我得到的值的结果是1

如果我再次选择选项Kw-2,我得到的结果值是2

结果是不正确的

我怎样才能解决这个问题

在这种情况下,更改事件发生在slcQuality通过输入事件发生的v-model更新之前。changeQuality正在记录slcQuality当时的值,因此它可能看起来好像slcQuality没有被更新,但实际上它发生在后续事件中

您可以通过侦听输入而不是更改来查看更新的值:


@成功没有问题:
<b-form-select @input="changeQuality">