vue.js封装switch开关组件的操作
这篇文章主要介绍了vue.js封装switch开关组件的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
我的项目本来用的element,但是switch开关不符合设计要求,于是自己封装了一个switch组件,并且实现了switch开关的双向数据绑定
template label role="checkbox" :class="['switch', { toggled }]" input type="checkbox" @change="toggle" / : /div /div span v-if="toggled" v-html="labelChecked" /span span v-html="labelUnchecked" v-else /span /label /template
补充知识:vue 监控el-switch控件值的变化
我要的效果是根据系统消息的推送范围决定推送人标签的显示,如下图两种情况:
——选择全站推送
——选择个人推送
——页面定义的data对象
el-switch标签控件的代码, v-model="entity.pushRange"绑定的是推送范围字段
el-form-item label="推送范围:" :label-width="formLabelWidth" prop="pushRange" el-switch v-model="entity.pushRange" active-color="#13ce66" inactive-color="#ff4949" active-text="全站" inactive-text="个人" @change="parens2($event)" /el-switch /el-form-item
下面的推送人id文本框,v-if=“FalgpushId”用来控制该文本框的显示,等于false时隐藏,true时显示(默认值为初始化时定义的FalgpushId = false,所以隐藏掉了)
!-- 推送人id -- el-form-item label="推送人ID:" :label-width="formLabelWidth" prop="pushId" v-if="FalgpushId" el-input v-model="entity.pushId" :disabled="disabled" clearable /el-input /el-form-item
methods中的方法,通过$event写法来监控该控件值的变化
methods:{ //该方法传入推送范围值,根据判断,决定是否展示其下面的推送人ID文本框 parens2(value){ let self = this ; if(value == false){ //el-switch控件为 个人推送时,value为false self.FalgpushId = true; //推送人id文本框显示 self.entity.pushRange = false; }else if(value == true){ //el-switch控件为 true 全站推送,value为true self.FalgpushId = false; //推送人id文本框隐藏 self.entity.pushRange = true; }
以上这篇vue.js封装switch开关组件的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持凡科。