element-ui switch组件如何选择性触发它的change事件

新手上路,请多包涵

有这样一个场景:需要先从数据库拿到当前的开关状态,改变当前的界面开关显示,但是UI的改变会触发change事件,发送命令给设备。并且在实际使用中,也需要实时的从数据库拿到数据,改变UI,但是又会触发change事件,发送命令给设备。

clipboard.png

Q1:怎么才能在不触发change事件的前提下,改变element-ui的switch状态。或者说怎么区分是进行了开关控制还是程序获取到数据对UI进行的改变,这种情况应该怎么解决呢

阅读 18.4k
3 个回答
<el-switch
    style="display: block"
    v-model="value4"
    active-color="#13ce66"
    inactive-color="#ff4949"
    active-text="按月付费"
    inactive-text="按年付费"
    @change="value4Cahgne">
  </el-switch>

注意value4,它拿到的就是true(选中)或false(未选中),你根据这个值来设定就行了

可以定义一个参数trigger,值为false,获取数据赋值后置为true。
所有的switch的change事件处理中首先判断trigger的值,若为false,直接ruturn false

不使用switch组件。找两个checkbox图标,一个选中,一个未选中,通过@click来实现功能,v-if显示相应图标

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题