sagalbot/vue-select 选中元素变动事件(:on-change 踩坑)

41 篇文章 0 订阅

场景

  • 需要根据选中元素为依赖获取一个计算属性(array), 此时computed不能满足

分析

官方文档的介绍

/**

  • An optional callback function that is called each time the selected
  • value(s) change. When integrating with Vuex, use this callback to trigger
  • an action, rather than using :value.sync to retreive the selected value.
  • @type {Function}
  • @param {Object || String} val
    */
    onChange: {
    type: Function,
    default: function (val) {
    this.$emit(‘input’, val)
    }
    },

但是 @change是不起作用的
@input 可以捕捉change 事件, 且v-model还是在的

方案 && 遇到的坑

正确做法

:on-change=“changeProduct”
这个方法接受一个参数(当前选中的元素)

这里有个坑

:on-change=function 触发事件 ;但是如果使用这个方法的话 v-select上的v-model将不在起作用 && computed自然也不会触发

源码

  <v-select :options="list_product_type" placeholder="请选择产品" :on-change="changeProduct" v-model="product_type" label="product_name"></v-select>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值