【前端vue+elemenui】el-table根据表格数据设置整行样式或单元格样式

首先需要了解俩个函数,row-class-name、cell-class-name

这里以cell-class-name单元格样式为例

row-class-name行的 className 的回调方法,也可以使用字符串为所有行设置一个固定的 className。Function({row, rowIndex})/String
cell-class-name单元格的 className 的回调方法,也可以使用字符串为所有单元格设置一个固定的 className。Function({row, column, rowIndex, columnIndex})/String

 

<el-table
        ref="filterTable"
        :data="applyData"
        :cell-class-name="tableCellClassName"
        style="width: 100%"
        stripe
        :span-method="objectSpanMethod"
        :header-cell-style="{ 'text-align': 'center','background':'#5596F2','color':'#ffffff' }"
        :row-style="{'padding':'5px 0px', 'height': '80px'}"
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" fixed width="50" />
        <el-table-column prop="wdmc" label="测1" width="300" />
        <el-table-column prop="status" label="测2" width="110" />
        <el-table-column label="测3" width="935" style="text-align:left">
          <template slot-scope="scope">
            <el-steps :active="scope.row.active" space="350px" finish-status="success" process-status="process">
              <el-step v-for="item,i in scope.row.SubNode" :key="i" :title="`${item.TaskDesc}:${item.User}`" :status="item.processStatus">
                <template slot="description">
                  <!-- <span v-if="item.TaskDesc != '申请人提交' && item.TaskDesc != '审批通过'">审批意见:{{ item.opinion }}</span><br> -->
                  <span>{{ item.Time }}</span>
                </template>
              </el-step>
            </el-steps>
          </template>
        </el-table-column>
      </el-table>

 

// 修改样式
    tableCellClassName(cel) {
      // 行中数据满足某个条件时class设置为bordertop
      if (cel.row.isBorder) {
        return 'bordertop'
      } else {
        return 'zcbordertop'
      }
    }
::v-deep .bordertop{
  border-top: 2px solid #409EFF;
  text-align: center;
  padding: 7px 0px;
}
::v-deep .zcbordertop{
  text-align: center;
  padding: 7px 0px;
}

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Vue是一种流行的JavaScript框架,而el-tableVue框架中的一个组件,它可以方便地创建表格,并支持各种功能和事件。如果想要用Vueel-table制作岗位排班表,可以按照以下步骤进行操作。 首先,需要在Vue项目中引入element-ui库,它是一个基于Vue的组件库,包含了el-table组件以及许多其他强大的组件。 然后,可以开始构建岗位排班表的界面。可以使用el-table组件创建一个表格,并定义表格的列和数据。根据岗位排班的需求,可以根据不同的班次和日期来定义表格的行和列。可以使用el-table-column组件定义每一列的标题、属性和渲染方式。 接下来,需要从后端获取岗位排班表的数据。可以使用Vue的生命周期钩子函数,在组件创建的时候调用后端的API接口获取数据,并将数据存储在组件的data属性中。 然后,将获取到的数据绑定到el-table组件的data属性上,这样就可以动态地渲染岗位排班表的内容。 此外,还可以添加一些其他的功能,例如增删改查,可以使用element-ui提供的组件和方法来实现。也可以使用el-table的事件来监听用户的操作,例如用户对表格进行了排序或筛选等。 最后,可以对表格进行样式的美化,可以使用element-ui提供的样式类或自定义样式来装饰表格。 总结来说,使用Vueel-table组件可以方便地制作岗位排班表。通过定义表格的列和数据,绑定后端获取到的数据,以及添加其他的功能和样式,我们可以创建一个功能强大且美观的岗位排班表。 ### 回答2: 要使用Vueel-table组件制作岗位排班表,首先需要安装Vueelement-ui,并在项目中引入相关的组件和样式。 接下来,在Vue的模板中创建一个el-table组件,并设置表格的列和数据源。每一列代表一个岗位,每一行代表一个时间段。可以使用一个二维数组来存储岗位排班信息,数组的每一行表示一个时间段,数组的每一列表示一个岗位,数组元素表示该时间段该岗位的排班情况。 在el-table的列中,可以使用slot来自定义每个单元格的内容,根据数组中的元素将单元格渲染为不同的状态,例如上班、休息、请假等。 可以使用computed属性来计算岗位排班表的数据,将二维数组转换为el-table组件可以接受的格式,并绑定到el-table的data属性上。 在el-table的其他配置中,可以设置分页、排序、过滤等功能,以便在排班表数据量较大时进行操作和查找。 除了el-table组件,还可以使用其他element-ui的组件来给排班表添加更多的功能,例如日期选择器来选择排班时间范围、表单输入框来添加排班信息等。 最后,通过样式调整,可以美化岗位排班表的外观,使其更加直观和易于使用。 总结:使用Vueel-table组件可以方便地制作岗位排班表。需要先安装Vueelement-ui,然后创建el-table组件并设置表格的列和数据源。通过自定义单元格的内容和设置其他功能和样式,可以实现一个功能齐全且美观的岗位排班表。 ### 回答3: Vueel-table组件是一个非常强大的表格工具,可以帮助我们实现各种复杂的数据展示和处理需求,包括制作岗位排班表。 首先,我们需要准备好岗位排班表所需的数据。可以考虑使用一个二维数组来表示表格数据,每一行代表一个岗位,每一列代表一个日期。另外,可以再添加一行用于显示日期标签,一列用于显示岗位标签。这样,二维数组的第一行和第一列就是标签行和标签列,剩下的部分就是我们需要填充的岗位排班表数据。 接下来,我们可以在Vue的组件中使用el-table组件来展示和处理岗位排班表数据。首先,创建一个包含el-table组件的父组件,设置表格的基本样式和配置参数,如行高、列宽、边框等。然后,在表格的slot中添加具体的表格内容。在这个示例中,我们可以使用v-for指令来循环渲染表格的每一行和每一列。同时,可以使用v-model指令来双向绑定表格中的数据,这样可以方便地对表格数据进行增删改查。 在填充表格数据时,可以通过计算属性来获取实际需要展示的岗位排班表数据。这个计算属性可以根据具体的排班规则和数据来源来计算得到。例如,可以根据员工信息和排班规则,计算每个岗位在每天的排班情况,然后将这些数据填充到岗位排班表中对应的位置。 最后,我们可以在表格中添加一些交互功能以增强用户体验。例如,可以添加一个事件监听函数,来处理用户对表格内容的操作,如添加、删除、修改岗位排班表的数据。同时,可以设置表格样式样式类,以便根据不同的数据类型和状态来显示不同的样式,提供更直观的数据展示效果。 总之,使用Vueel-table组件,我们可以很方便地制作出一个功能齐全、交互友好的岗位排班表。通过灵活运用Vue框架的各种特性和功能,我们可以实现对表格数据的快速绑定和处理,提高开发效率,满足不同的业务需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值