Vue el-table-column 动态使用style

这几天在做一个基于el-table-column的二次封装,主要是针对于el-table-column对于多布局的使用比较麻烦,途中需要用到外界传入style 样式,那么怎么动态的使用style 呢,下面直接上代码
这个是封装的表头文件,如果需要自定义s tyle 的话,需要在这个文件里面填写样式
 

	{
	prop: 'medium',
	label: '媒体',
    width: 180,
    type:adapter_column_type.INPUTER
	},
    
    {
	prop: 'image_list',
	label: '图片',
    width: 280,
    type:adapter_column_type.IMAGE,
    custom_style:{
    width:100+"px",
    height:100+"px"
    }

然后动态创建 表格

 

 <el-table :data="tableData" border style="width: 100%">
      <template v-for="column in my_columns">
        <adapterColumn
          :key="column.prop"
          :adapter_prop="column.prop"
          :adapter_label="column.label"
          :adapter_width="column.width"
          :adapter_type="column.type"
          :custom_style="column.custom_style"
        >
        </adapterColumn>
      </template>
    </el-table>

adapterColumn 是我基于 el-table-column 封装的一个组件
 

  <div v-if="adapter_type == POPOVER">
        <el-popover
          placement="right"
          :title="adapter_label"
          width="200"
          trigger="hover"
          :content="scope.row[adapter_prop]"
        >
          <span
            id="show_popover"
            class="show_content"
            :style="custom_style ? [custom_style] : [content_style]"
            slot="reference"
          >
            {{ scope.row[adapter_prop] }}
          </span>
        </el-popover>
      </div>

而上面代码的custom_style 为外部传入字段,有值的时候就显示外部style ,没有值的时候使用默认样式
 

custom_style: {

type: Object,

default: () => {}

},

 

computed: {

content_style() {

return "width:" + this.adapter_width + "px";

}

},

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`el-table-column` 和 `el-statistic` 是 Element UI 库中的两个组件,它们通常一起使用来创建具有统计信息的表格。Element UI 是一个基于 Vue 的 UI 组件库,提供了许多常用的组件,用于快速构建 Vue 应用程序的用户界面。 下面是关于如何使用 `el-table-column` 和 `el-statistic` 的简要介绍: **el-table-column** `el-table-column` 是用于定义表格列的组件。你可以使用它来设置列的标题、数据绑定和可能的排序规则等。 基本用法示例: ```vue <el-table-column prop="name" label="姓名" width="180"> <template slot-scope="scope"> <div>{{ scope.row.name }}</div> </template> </el-table-column> ``` 上述代码中,`prop` 属性用于指定数据列的字段名,`label` 属性用于设置列的标题,`width` 属性用于设置列的宽度。在模板中,你可以使用 `scope` 对象来访问当前行的数据,并使用其中的字段进行显示。 **el-statistic** `el-statistic` 是用于显示统计信息的组件,它可以显示数字、百分比、排名等信息。你可以使用它来为表格的每一列添加统计信息。 基本用法示例: ```vue <el-statistic-row> <el-statistic-column :text="total.name"></el-statistic-column> <el-statistic-column>50</el-statistic-column> <!-- 数值统计 --> <el-statistic-column>50%</el-statistic-column> <!-- 百分比统计 --> <el-statistic-column :text="total.rank"></el-statistic-column> <!-- 排名统计 --> </el-statistic-row> ``` 上述代码中,`el-statistic-row` 用于定义统计行,每个 `el-statistic-column` 则表示一列统计信息。你可以根据需要添加或删除相应的统计列。 要使用这些组件,你需要在项目中引入 Element UI 库,并在 Vue 组件中正确导入和使用它们。确保你已经安装了 Element UI,并且正确配置了 Vue 项目。此外,你可能还需要根据具体的需求调整组件的使用方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值