关于作者
还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信,一起交流。
热门推荐 | 内容链接 |
---|---|
1 | openlayers 从基础到精通,300+代码示例 |
2 | leaflet 热门分解学习教程,150+图文示例 |
3 | cesium 从0到1学习指南,200+代码示例 |
4 | mapboxGL 从入门到实战,150+图文示例 |
5 | canvas 示例应用100+,揭密底层细节 |
6 | javascript从基础到高级,示例展示200+ |
7 | vue2 实战指南,100+个细节深度剖析 |
示例背景
根据vue项目的需求,需要做二维数组的全选、全不选、反选、部分全选功能。 怎么制作呢? 全选、全不选很好处理,反选和部分全选处理起来麻烦一些,需要判断父级是否为选中状态。具体的代码请采纳考示例。
示例效果图
示例源代码
/*
* @Author: 大剑师兰特(xiaozhuanlan),还是大剑师兰特(CSDN)
* @此源代码版权归大剑师兰特所有,可供学习或商业项目中借鉴,未经授权,不得重复地发表到博客、论坛,问答,git等公共空间或网站中。
* @Email: [email protected]
* @weixin: gis-dajianshi
* @First published in CSDN
* @First published time: 2024-01-13
*/
<template>
<div class="djs-box">
<div class="topBox">
<h3>vue中实现二维数组全选、全不选、反选、部分全选功能 </h3>
<div>大剑师兰特, 还是大剑师兰特,gis-dajianshi</div>
</div>
<div class="dajianshi">
<div class="box">
<h4>二维数组</h4>
<div v-for="(item1,index1) in arr2" :key="index1">
<el-checkbox v-model="item1.isChecked" @change="partAll(item1)"/>
时间:{
{
item1.time}}
<div v-for="(item2,index2) in item1.children" :key="index2" class="lh30">
<el-checkbox v-model="item2.isChecked" @change="partInverse(item1)" />
内容:{
{
item2.info}}-代号-{
{
item2.code}} -- 原索引:{
{
item2.indexId}}
</div>
</div>
<h4>
<el-button @click="chooseAll()" type="primary" size="mini"> 全选</el-button>
<el-button @click="clearAll()" type="primary" size="mini"> 全不选</el-button>
<el-button @click="inverse()" type="primary" size="mini"