关于Vue的v-for渲染出多个元素之后如何单独添加属性
2018-03-29 10:25
323 查看
问题:我们想要在一个表单里面。有多个按钮,但是点击到只剩下一个按钮之后那个按钮不可点击。
原先:
<template scope="scope"> <el-switch v-model="scope.row.state" :on-value=1 :off-value=0 on-text="否" off-text="是" v-if="scope.row.assign==1" @change="setChange(scope.$index,scope.row)" > </el-switch></template>
解决方法:我们在可以每一个switch里面添加一个属性,之后在属性里面做判断
<template scope="scope"> <el-switch v-model="scope.row.state" :on-value=1 :off-value=0 on-text="否" off-text="是" v-if="scope.row.assign==1" @change="setChange(scope.$index,scope.row)" :disabled="scope.row.state==1&&isDisabled"> </el-switch></template>
之后在script中添加如下方法,判断每次点击的时候。剩下的switch的状态。在做判断
setChange(index, row) { let arr = []; // 改变后的值 if(row.state==1){ row.state=0; }else{ row.state=1; } this.list1.forEach(element => { if(element.assign==1&&element.state==1){ arr.push(1); } }); // console.log(arr.length); //判断最后一个开关是否禁用 if(arr.length<=1){ this.isDisabled=true; }else{ this.isDisabled=false; }
原先:
<template scope="scope"> <el-switch v-model="scope.row.state" :on-value=1 :off-value=0 on-text="否" off-text="是" v-if="scope.row.assign==1" @change="setChange(scope.$index,scope.row)" > </el-switch></template>
解决方法:我们在可以每一个switch里面添加一个属性,之后在属性里面做判断
<template scope="scope"> <el-switch v-model="scope.row.state" :on-value=1 :off-value=0 on-text="否" off-text="是" v-if="scope.row.assign==1" @change="setChange(scope.$index,scope.row)" :disabled="scope.row.state==1&&isDisabled"> </el-switch></template>
之后在script中添加如下方法,判断每次点击的时候。剩下的switch的状态。在做判断
setChange(index, row) { let arr = []; // 改变后的值 if(row.state==1){ row.state=0; }else{ row.state=1; } this.list1.forEach(element => { if(element.assign==1&&element.state==1){ arr.push(1); } }); // console.log(arr.length); //判断最后一个开关是否禁用 if(arr.length<=1){ this.isDisabled=true; }else{ this.isDisabled=false; }
相关文章推荐
- <转>jquerymobile动态添加元素之后有些不能被正确渲染的解决方法
- XMLSPY如何添加全局元素,全局类型,全局属性等等
- vue如何给v-for循环的标签添加背景图片
- js动态添加元素之后jquery mobile不能正确渲染解决方法 和 JM checked全选反选
- Vue.js入门学习--列表渲染--v-for遍历数组生成元素(四)
- 关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
- jquerymobile动态添加元素之后不能正确渲染解决方法(转)
- jquerymobile动态添加元素之后不能正确渲染解决方法
- jquery mobile动态添加元素之后不能正确渲染解决方法说明
- 关于表格动态添加行并处理相关表单元素的一些修改----优化for重用(1)
- 关于如何更好的监听元素属性的变化(转)
- vue2.0关于set添加属性后视图不能更新的问题
- 关于如何利用原生js动态给一个空对象添加属性以及属性值
- jquery mobile动态添加元素之后不能正确渲染解决方法说明
- vuejs中,如何使一个自定义函数在vue渲染完之后再自动执行
- 关于表格动态添加行并处理相关表单元素的一些修改----优化for重用(2)
- 关于表格动态添加行并处理相关表单元素的一些修改----优化for重用(3) --最终版
- vue之v-for中给每个item动态绑定class,动态添加元素,动态删除某个元素的实现
- vue中如何在v-for中动态的使用将index拼接字符串后绑定id属性
- jquerymobile动态添加元素之后不能正确渲染解决方法