如何在 ant 的table中实现图片的渲染操作


Posted in Javascript onOctober 28, 2020

如何在 ant 的table中实现图片的渲染

如何在 ant 的table中实现图片的渲染操作

在使用react 的蚂蚁金服的ui库的时候,,平时用到的比较比较多的就是table组件,但是在ant官网上面,并没有在后台调取接口获取数据后,,如何将后台的http://lkjlkjlkj.jpg图片渲染到每一行的例子。。只有一个render的方法。。。查阅了一些资料,作为一个不是很资深的前端来说,忙活了一上午,。实现了这个功能。。。记录一下。。。

这里是table的使用

<Table
    selectHandle={false}
    onCtrlClick={ this.tableAction }
    header={this.tableHeader()}
    pagination={ true }
    scroll = {{y:450}}
    pageSize={10}
    getpage={this.getpage}
    currentPage={this.state.currentPage}
    data={this.state.dataSource}
    checkChang={this.checkChang} />

table中theader的渲染

tableHeader = () => {
   return [{
     dataIndex: '',
     title: 'Logo',
     width: 150,
     key : 'image',
     render:(record) => {
         return <img src={record.image} alt="" style={{width:'5  0px',height:'50px',borderRadius:'50%'}}/>
     }
   },{
     dataIndex: 'name',
     title: '名称',
     width: 150,
     key : 'name'
   },{
     dataIndex: 'label',
     title: '标签',
     width: 150,
     key : 'label'
   },{
     dataIndex: 'collectCount',
     title: '关注数',
     width: 150,
     key : 'collectCount'
   }, {
     dataIndex: 'topicCount',
     title: '帖子数',
     width: 150,
     key : 'topicCount'
   },{
     dataIndex: 'inTime',
     title: '创建时间',
     width: 150,
     key : 'inTime'
   }]
 }

如何在 ant 的table中实现图片的渲染操作

利用table 中 render的属性,,,将LOGO在tableHeader中render return一个img 标签,并将src={ record.image }

图片就正确的渲染到你的table中了。。拿走 不谢~~~

补充知识:ant design table 数据渲染,插槽使用

我就废话不都说了,大家还是直接看代码吧~

<a-table :columns="columns" :dataSource="dataList" :loading="loading" :pagination="false" :rowKey="(record,index) => index">
    <template slot="duty" slot-scope="text, record, index">
      <span v-if="text == 'general'">普通员工</span>
      <span v-if="text == 'expert'">专家</span>
      <span v-if="text == 'admin'">管理员</span>
    </template>
    <template slot="status" slot-scope="text, record, index">
      <span v-if="text == '1'">正常</span>
      <span v-if="text == '0'">失效</span>
    </template>
    <template slot="action" slot-scope="text, record, index">
      <a-button type="primary" size="small" @click="editUser(record)">编辑</a-button>
    </template>
  </a-table>
  
  // script 部分
  
  data(){
      return {
        columns:[
      {
        title: '用户账号',
        dataIndex: 'username',
      },
      {
        title: '姓名',
        dataIndex: 'name',
      },
      {
        title: '角色',
        dataIndex: 'duty',
        scopedSlots: {customRender: 'duty'}
      },
      {
        title: '状态',
        dataIndex: 'status',
        scopedSlots: {customRender: 'status'}
      },
      {
        title: '操作',
        dataIndex: 'action',
        scopedSlots: {customRender: 'action'},
      }],
        dataList: [],
        loading: false,
      }
    },
    created(){
      this.getList()
    },
    methods: {
     getList(){
        this.loading = true;
        this.$http.get('/getUsers.do').then(res => {
          if(res){
            this.dataList = res || []
          }
          this.loading = false;
        }).catch(err => {
          console.log(err)
        })
      },
      editUser(record){
        this.$refs.addModal.showModal(record)
      },
    }

1.columns 定义table 表头,以及和 dataList 的字段对应,

2. dataSource 为数据源,是一个数组,

3.loading 加载时loading,数据请求前设置 true,请求完成后设置 false,

4.插槽的使用

很多情况下,后端返回的数据是 数字,前端需要展示文字,这事使用插槽就会非常方便

1.首先,在 columns 中需要的部分添加 scopedSlots: {customRender: ‘status'}

2.table 中添加标签

<template slot="status" slot-scope="text, record, index">
  <span v-if="text == '1'">正常</span>
  <span v-if="text == '0'">失效</span>
</template>

customRender 的值和slot 的值相对应,slot-scope 中 text就是status的值(text可以自定义,key,item都可以), record 代表text所在的对象,可以通过 record 拿到该行的其他值. 比如

editUser(record){
  this.$refs.addModal.showModal(record)
},

把record作为参数传递,编辑改用户信息.

以上这篇如何在 ant 的table中实现图片的渲染操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 用Node.js写Shell脚本[译]
Sep 20 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
Nov 26 Javascript
JavaScript中创建字典对象(dictionary)实例
Mar 31 Javascript
Angularjs中UI Router的使用方法
May 14 Javascript
分分钟玩转Vue.js组件
Oct 25 Javascript
浅谈javascript的闭包
Jan 23 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
Mar 02 Javascript
Vue项目自动转换 px 为 rem的实现方法
Oct 29 Javascript
详解VUE调用本地json的使用方法
May 15 Javascript
Vue.js组件通信之自定义事件详解
Oct 19 Javascript
JavaScript命令模式原理与用法实例详解
Mar 10 Javascript
一文带你理解vue创建一个后台管理系统流程(Vue+Element)
May 18 Vue.js
WebStorm中如何将自己的代码上传到github示例详解
Oct 28 #Javascript
原生JS生成指定位数的验证码
Oct 28 #Javascript
微信小程序接入vant Weapp组件的详细步骤
Oct 28 #Javascript
Ant-design-vue Table组件customRow属性的使用说明
Oct 28 #Javascript
通过JS判断网页是否为手机打开
Oct 28 #Javascript
ant design vue嵌套表格及表格内部编辑的用法说明
Oct 28 #Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
Oct 28 #Javascript
You might like
用php写的serv-u的web申请账号的程序
2006/10/09 PHP
如何修改和添加Apache的默认站点目录
2013/07/05 PHP
Laravel 4.2 中队列服务(queue)使用感受
2014/10/30 PHP
PHP中返回引用类型的方法
2015/04/03 PHP
PHP通过引用传递参数用法分析
2016/12/01 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
PhpSpreadsheet设置单元格常用操作汇总
2020/11/13 PHP
iis6+javascript Add an Extension File
2007/06/13 Javascript
jquery不会自动回收xmlHttpRequest对象 导致了内存溢出
2012/06/18 Javascript
关于jQuery UI 使用心得及技巧
2012/10/10 Javascript
Web性能优化系列 10个提升JavaScript性能的技巧
2016/09/27 Javascript
浅谈EasyUi ComBotree树修改 父节点选择的问题
2016/11/07 Javascript
详解vue2.0脚手架的webpack 配置文件分析
2017/05/27 Javascript
浅谈关于axios和session的一些事
2017/07/13 Javascript
vue 自定义 select内置组件
2018/04/10 Javascript
深入剖析Node.js cluster模块
2018/05/23 Javascript
vue实现element-ui对话框可拖拽功能
2018/08/17 Javascript
使用vue.js在页面内组件监听scroll事件的方法
2018/09/11 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
Vue一个案例引发的递归组件的使用详解
2018/11/15 Javascript
vue 内置过滤器的使用总结(附加自定义过滤器)
2018/12/11 Javascript
vue指令做滚动加载和监听等
2019/05/26 Javascript
JS中call()和apply()的功能及用法实例分析
2019/06/28 Javascript
Python爬虫获取整个站点中的所有外部链接代码示例
2017/12/26 Python
在django admin中添加自定义视图的例子
2019/07/26 Python
感知器基础原理及python实现过程详解
2019/09/30 Python
python使用numpy实现直方图反向投影示例
2020/01/17 Python
Django如何重置migration的几种情景
2021/02/24 Python
Dillard’s百货官网:Dillards.com
2018/05/26 全球购物
自荐信的两点禁忌
2013/10/30 职场文书
2014年安全生产责任书
2014/07/22 职场文书
中学生运动会新闻稿
2014/09/24 职场文书
大学迎新生标语
2014/10/06 职场文书
家长反馈意见及建议
2015/06/03 职场文书
班主任培训研修日志
2015/11/13 职场文书
2019年警察入党转正申请书最新范文
2019/09/03 职场文书