vue-table里面放入图片

本文介绍了如何在Vue表格中使用<template slot-scope>实现图片懒加载,展示了如何通过data中的'cover'属性动态显示100x100大小的图片。

代码

        单个图片

<el-table :data="data" style="width: 100%">
      <el-table-column prop="cover" width="180">
        <template slot-scope="scope">
          <img :src="scope.row.cover" width="100" height="100" class="cover" />
        </template>
      </el-table-column>
</el-table>

scope和scope.row是vue的,cover是 table中传入的data里面的属性

传入数据格式

### 如何在 Ant Design Vue 的 A-Table 单元格内嵌入自定义组件 要在 `a-table` 中嵌入自定义组件,可以通过配置列的 `render` 方法来实现。以下是详细的说明和示例代码。 #### 实现方式 通过 `columns` 配置中的 `render` 函数,可以动态返回 JSX 或者 Vue 组件的内容。在这个函数中,可以根据当前单元格的数据 (`record`) 和索引 (`index`) 来决定渲染的具体内容[^1]。 下面是一个完整的示例,展示如何在一个单元格中嵌入一个简单的输入框组件: ```vue <template> <a-form :form="form"> <a-table :dataSource="dataSource" :columns="columns" bordered /> </a-form> </template> <script> import { Form } from 'ant-design-vue'; export default { data() { const [form] = Form.useForm(); // 使用 useForm 创建表单实例 return { form, dataSource: [ { key: '1', name: 'Edward King 0', age: '32' }, { key: '2', name: 'Edward King 1', age: '' }, ], columns: [ { title: 'Name', dataIndex: 'name', key: 'name', }, { title: 'Age', dataIndex: 'age', key: 'age', render: (text, record) => { return ( <EditInput value={text} onValueChange={(value) => this.updateData(value, record)} /> ); }, // 自定义组件嵌入到单元格中[^3] }, ], }; }, methods: { updateData(value, record) { const newData = [...this.dataSource]; const target = newData.filter((item) => record.key === item.key)[0]; if (target) { target.age = value; this.dataSource = newData; } }, }, }; </script> <!-- 定义 EditInput 自定义组件 --> <script> const EditInput = { props: ['value'], methods: { handleChange(e) { this.$emit('onValueChange', e.target.value); }, }, render() { return <input type="text" value={this.value} onChange={this.handleChange} />; }, }; export default EditInput; </script> ``` #### 关键点解析 1. **使用 `useForm` 初始化表单** 如果需要对表格内的数据进行校验或者管理状态,推荐使用 `Form.useForm()` 创建表单实例,并将其绑定到 `<a-form>` 上。 2. **动态更新数据源** 当用户修改某个单元格的值时,调用回调函数(如上例中的 `updateData`),并将新值同步回 `dataSource` 数据源中。 3. **自定义组件嵌套** 利用 `render` 属性,在单元格中返回任意复杂的 JSX/Vue 结构,从而支持嵌入各种类型的子组件。 --- ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值