element封装自定义弹框组件Table并自适应宽度

本文介绍如何使用Vue.js封装一个基于Element UI的自定义弹框组件,该组件能够动态渲染数据数组,并提供type属性以实现不同类型的交互,如点击跳转。组件内包含顶部和底部插槽,方便自定义内容和操作按钮。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将需要渲染的数据通过数组的传入 组件内通过循环动态渲染,该组件可以通过添加type类型配合template slot拓展 还放置两个插槽进行拓展一个插槽在表格上面 一个用来插操作按钮

<template>
    <div>
        <!-- RFID详情 -->
        <el-dialog :title="title" :visible.sync="codeDetailShow" width="70%" ref="cardBox" :close-on-click-modal=false
                   :append-to-body=true>
            <div style="margin-bottom: 16px;">
                <slot name="headSlot"></slot>
            </div>
                <el-table :data="tableList.slice((table.page - 1) * table.rows,table.page * table.rows)"
                          v-loading="loadings">
                    <el-table-column type="index" align="center" label="序号">
                    </el-table-column>
                    <el-table-column v-for="(item,index) in sizeNameList" :key="index" align="center" :label="item.name"
                                     :width="flexColumnWidth(item.id,tableList)">
                        <template slot-scope="scope">
                            <div v-if="item.type=='img'">
                                <el-image class="table_img" v-if="scope.row[item.id]"
                                          @click="viewImg(scope.row[item.id])" :src="scope.row[item.id] + imgAbbreviate"
                                          fit="contain"></el-image>
                                <img alt="" class="table_img" src="../../assets/img/imgbg.png" v-else/>
                            </div>
                            <!-- 时间格式年月日时分秒 -->
                            <div v-else-if="item.type == 'date'">
                                {
  
  { scope.row[item.id] | time }}
                            </div>
                                <!-- day时间格式年月日 -->
                                <div v-else-if="item.type == 'day'">
                                    <span>{
  
  { scope.row[item.id] | day }}</span>
                                </div>
             
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值