全国服务热线:4008-888-888

行业新闻

微信小程序时期来啦_vue.js封装switch开关组件的操

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开关组件的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持凡科。




在线客服

关闭

客户服务热线
4008-888-888


点击这里给我发消息 在线客服

点击这里给我发消息 在线客服