antd+vue表格固定列之后出现空白列-解决方案

本文介绍了一种解决Antd+Vue框架中表格固定列出现空白列的问题,通过为固定列添加宽度属性,有效避免了空白列的出现,确保了表格布局的正确性和美观性。

antd+vue表格固定列之后出现空白列,如下:
在这里插入图片描述
代码如下:

<a-col :md="24">
  <h4>表格固定列</h4>
  <a-table :columns="columns" :data-source="dataTable" :scroll="{ x: 900 }" bordered>
    <a slot="action" slot-scope="text, record" 
    	href="javascript:;" 
    	@click="handleOk(record.id)">action</a>
  </a-table>
</a-col>
export default {
  data () {
    return {
      columns: [
        { title: 'Column 1', dataIndex: 'address', key: '1' },
        { title: 'Column 2', dataIndex: 'address', key: '2' },
        { title: 'Column 3', dataIndex: 'address', key: '3' },
        { title: 'Column 4', dataIndex: 'address', key: '4' },
        { title: 'Column 5', dataIndex: 'address', key: '5' },
        { title: 'Column 6', dataIndex: 'address', key: '6' },
        { title: 'Column 7', dataIndex: 'address', key: '7' },
        { title: 'Column 8', dataIndex: 'address', key: '8' },
        {
          // width: 100,
          title: 'Action',
          key: 'operation',
          fixed: 'right',
          scopedSlots: { customRender: 'action' }
        }
      ],
      dataTable: [
        {
          address: 'London Park'
        }
      ]
    }
  }
}

改进方案:
给固定列添加宽度:

{
  width: 100,
  title: 'Action',
  key: 'operation',
  fixed: 'right',
  scopedSlots: { customRender: 'action' }
}
Ant Design Vue (antdv) 中创建一个表格并且实现多选功能,当用户选择某一行后想要禁用该行,通常你可以通过在`<el-table-column>`的属性中设置`formatter`函数来控制单元格的内容。当你获取到选中的行数据时,可以判断当前行是否被选中,如果被选中则渲染成禁用状态。 以下是一个简单的示例: ```html <template> <el-table :data="tableData" @selection-change="handleSelectionChange" border > <el-table-column type="selection" width="55"></el-table-column> <el-table-column prop="name" label="姓名" width="180"></el-table-column> <el-table-column prop="age" label="年龄" width="180"> <template slot-scope="scope"> <span v-if="selectedRows.includes(scope.$index)" disabled>{{ scope.row.age }}</span> <span v-else>{{ scope.row.age }}</span> </template> </el-table-column> <!-- 添加更多... --> </el-table> </template> <script> export default { data() { return { tableData: [], // 假设你已经有了数据源 selectedRows: [] }; }, methods: { handleSelectionChange(selectedRows) { this.selectedRows = selectedRows; // 更新选中行数组 } } }; </script> ``` 在这个例子中,我们监听`selection-change`事件,每当用户选择或取消选择某一行时,`handleSelectionChange`方法会被调用并更新`selectedRows`。然后我们在显示年龄的单元格模板里检查当前索引是否在选中行数组内,如果是,则显示的年龄值会包裹在一个禁用的`<span>`标签内。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值