电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

vue-列表下詳情的展開與折疊案例

瀏覽:3日期:2022-12-24 18:54:25

如下所示:

vue-列表下詳情的展開與折疊案例

功能描述

1、默認(rèn)折疊,點(diǎn)擊時展示全部數(shù)據(jù)

2、點(diǎn)擊A項(xiàng),A展開,之后有兩種情況:①再次點(diǎn)擊A,A折疊;②點(diǎn)擊其他項(xiàng),如B,這時B展開,A折疊

解決方式

1、給展開折疊圖標(biāo)添加一個樣式,顯示成動畫效果

<div :class='{’open’:showDetail === index}'></div>.arrow{ position absolute width: 0.6rem; height: 0.3rem; top 2.0rem right 0.8rem background url(../../../assets/images/icon_up.png) no-repeat background-size: 100% 100% transition: transform 0.3s -webkit-transition: transform 0.3s &.open{ transform : rotate(-180deg) }}

2、詳情樣式

<transition-group tag='div' mode=''> <div v-for='i in 1' :key='i' :ref='`stateopen${index}`' v-show='showDetail===index'>... </div></transition-group>

3、方法詳情

// 展開與折疊// 分析:// 1,showDetail默認(rèn)為-1,第一次任意點(diǎn)擊B,當(dāng)前B對象展開,showDetail=index=n,此時有兩種情況:// 情況1,再次點(diǎn)擊B,showDetail===index,B關(guān)閉,showDetail=-1// 情況2,點(diǎn)擊B以外的其他對象C,先關(guān)閉B,在打開當(dāng)前對象CfoldAndUnfold(index,item){ if(this.showDetail===index){//兩次點(diǎn)擊的對象相同,關(guān)閉 this.showDetail = -1 }else{//點(diǎn)擊的對象不同,先關(guān)閉前一對象,再打開當(dāng)前對象 this.showDetail = index }}

補(bǔ)充知識: Vue table 點(diǎn)擊按鈕展開折疊面板

vue 實(shí)現(xiàn)的 table 折疊展開功能,由于工作中用到,這里把相應(yīng)代碼整理下,方便自己日后 Copy

1.Html 部分

由基本的 table 表單與折疊欄部分組成

PS:table 上需要加上 ref,以便方法中能夠獲取到 table 屬性

<!-- 注意:el-table 上加一個 ref='table' --> <el-table ref='table' :data='list' border style='width: 100%; margin-top:20px; min-height:700px'> <el-table-column label='編號'> <template slot-scope='scope'> <span>{{ id }}</span> </template> </el-table-column> <el-table-column label='姓名'> <template slot-scope='scope'> <span>{{ name }}</span> </template> </el-table-column> <el-table-column label='操作' prop='operation'> <template slot-scope='scope'> <el-button plain @click='toogleExpand(scope.row)'>詳情</el-button> </template> </el-table-column> <!-- 展開部分 --> <el-table-column type='expand' width='1'> <template slot-scope='props'> <el-form label-position='left' inline class='demo-table-expand'> <!-- 參數(shù)列表 --> <el-form-item label='1111' label-width='100%'> aaa </el-form-item> </el-form> </template> </el-table-column> </el-table>

2. vue 的 JS 部分

<script> export default { data() { return { list: [{ id: ’1’, name: ’王小1’, }, { id: ’2’, name: ’王小2’, }, { id: ’3’, name: ’王小3’, }, { id: ’4’, name: ’王小4’, }] } }, methods: { // 展開行效果 toogleExpand(row) { const $table = this.$refs.table // 注意,這里的 this.list 是上面 data 中的 list // 通過比對數(shù)據(jù)與行里的數(shù)據(jù),對展開行進(jìn)行控制,獲取對應(yīng)值 this.list.map((item) => { if (row.id !== item.id) { $table.toggleRowExpansion(item, false) } }) $table.toggleRowExpansion(row) }, } } </script>

3.css 部分

這里除了基本的屬性外,主要我發(fā)現(xiàn)展開欄部分會有空白各自部分,還能拖開,因此加屬性把多余部分給隱藏掉

下方有注釋

<style> /* 展開行樣式 */ .demo-table-expand { font-size: 0; } .demo-table-expand label { width: 90px; color: #99a9bf; } .demo-table-expand .el-form-item { margin-right: 0; margin-bottom: 0; width: 100%; } .el-form-item__content { width: 100%; } /* 隱藏上方表格多余部分 */ .undefined.el-table__expand-column { display: none; } /* 隱藏上方表格多余部分 */ .el-table_1_column_8 .el-table--border td, .el-table--border th, .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed { border-right: 0px solid #ebeef5 }</style>

4.效果圖

這個效果圖是我后面補(bǔ)的,但是功能是以上面來做的

vue-列表下詳情的展開與折疊案例

以上這篇vue-列表下詳情的展開與折疊案例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 湖南档案密集架,智能,物证,移动,价格-湖南档案密集架厂家 | 健身器材-健身器材厂家专卖-上海七诚健身器材有限公司 | 一体化污水处理设备_生活污水处理设备_全自动加药装置厂家-明基环保 | PVC地板|PVC塑胶地板|PVC地板厂家|地板胶|防静电地板-无锡腾方装饰材料有限公司-咨询热线:4008-798-128 | 股票入门基础知识_股票知识_股票投资大师_格雷厄姆网 | led全彩屏-室内|学校|展厅|p3|户外|会议室|圆柱|p2.5LED显示屏-LED显示屏价格-LED互动地砖屏_蕙宇屏科技 | 上海佳武自动化科技有限公司 | 鲁尔圆锥接头多功能测试仪-留置针测试仪-上海威夏环保科技有限公司 | 美的商用净水器_美的直饮机_一级代理经销商_Midea租赁价格-厂家反渗透滤芯-直饮水批发品牌售后 | 智慧钢琴-电钢琴-便携钢琴-数码钢琴-深圳市特伦斯乐器有限公司 | 郑州爱婴幼师学校_专业幼师培训_托育师培训_幼儿教育培训学校 | 洁净棚-洁净工作棚-无菌室-净化工程公司_北京卫护科技有限公司 | 临海涌泉蜜桔官网|涌泉蜜桔微商批发代理|涌泉蜜桔供应链|涌泉蜜桔一件代发 | 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 | 车充外壳,车载充电器外壳,车载点烟器外壳,点烟器连接头,旅行充充电器外壳,手机充电器外壳,深圳市华科达塑胶五金有限公司 | 钢丝绳探伤仪-钢丝绳检测仪-钢丝绳探伤设备-洛阳泰斯特探伤技术有限公司 | 风淋室生产厂家报价_传递窗|送风口|臭氧机|FFU-山东盛之源净化设备 | 流变仪-热分析联用仪-热膨胀仪厂家-耐驰科学仪器商贸 | 超声波清洗机_大型超声波清洗机_工业超声波清洗设备-洁盟清洗设备 | 采暖炉_取暖炉_生物质颗粒锅炉_颗粒壁炉_厂家加盟批发_烟台蓝澳采暖设备有限公司 | 华中线缆有限公司-电缆厂|电缆厂家|电线电缆厂家 | 仓储货架_南京货架_钢制托盘_仓储笼_隔离网_环球零件盒_诺力液压车_货架-南京一品仓储设备制造公司 | 海德莱电力(HYDELEY)-无功补偿元器件生产厂家-二十年专业从事电力电容器 | 定硫仪,量热仪,工业分析仪,马弗炉,煤炭化验设备厂家,煤质化验仪器,焦炭化验设备鹤壁大德煤质工业分析仪,氟氯测定仪 | 阀门智能定位器_电液动执行器_气动执行机构-赫尔法流体技术(北京)有限公司 | 冲击式破碎机-冲击式制砂机-移动碎石机厂家_青州市富康机械有限公司 | 对辊式破碎机-对辊制砂机-双辊-双齿辊破碎机-巩义市裕顺机械制造有限公司 | 冷却塔风机厂家_静音冷却塔风机_冷却塔电机维修更换维修-广东特菱节能空调设备有限公司 | 酒店厨房设计_中央厨房设计_北京商用厨房设计公司-奇能商厨 | 热处理炉-退火炉-回火炉设备厂家-丹阳市电炉厂有限公司 | 厚壁钢管-厚壁无缝钢管-小口径厚壁钢管-大口径厚壁钢管 - 聊城宽达钢管有限公司 | 广州监控安装公司_远程监控_安防弱电工程_无线wifi覆盖_泉威安防科技 | 联系我们-腾龙公司上分客服微信19116098882 | 袋式过滤器,自清洗过滤器,保安过滤器,篮式过滤器,气体过滤器,全自动过滤器,反冲洗过滤器,管道过滤器,无锡驰业环保科技有限公司 | 网站建设-网站制作-网站设计-网站开发定制公司-网站SEO优化推广-咏熠软件 | 原色会计-合肥注册公司_合肥代理记账公司_营业执照代办 | 天津货架厂_穿梭车货架_重型仓储货架_阁楼货架定制-天津钢力仓储货架生产厂家_天津钢力智能仓储装备 | Duoguan 夺冠集团| 洗砂机械-球磨制砂机-洗沙制砂机械设备_青州冠诚重工机械有限公司 | 天长市晶耀仪表有限公司 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 |