一起使用mock数据动态创建表格
在ant-design中,我们创建一个基础table会怎么实现呢?
如下代码可视,我们会自己创建一些数据,在表格中渲染出来,如下
<Card title="基础表格">
<Table
columns={columns}
dataSource={this.state.dataSource}
pagination={false}
/>
</Card>
const columns=[
{
title:'id',
dataIndex:'id'
},
{
title:'用户名',
dataIndex:'userName'
},{
title:'性别',
dataIndex:'sex'
},
{
title:'爱好',
dataIndex:'hobby'
}
]
componentDidMount(){
const data=[
{
id:'0',
userName:'jser',
sex:'girl',
hobby:'jump'
},
{
id:'1',
userName:'小LUA',
sex:'girl',
hobby:'eat'
},
{
id:'2',
userName:'jYung',
sex:'girl',
hobby:'dance'
}
]
// 把数据存起来
this.setState({
dataSource:data
})
}
表格如下

当然这是数据比较少的情况下,如果数据很多呢?
我们可以通过使用mock的方式,动态创建数据
第一步:进入官网注册,并登录

进入之后的界面


####第二步:创建我们的项目,查看我们创建的项目


####第三步:进入项目,点击创建项目,创建接口


如下图是我根据我的需求创建的接口

跟大家推荐一个网站

我们根据文档,来创立我们的多条数据

点击创建跳转至

点击预览数据

####第四步:在我的项目中使用,由于已经安装了axios,我们可以直接使用
```js
import React from 'react'
import 'antd/dist/antd.css'
import{Card,Table} from 'antd'
import axios from 'axios'
export default class BasicTable extends React.Component{
state={
dataSource2:[]
}
componentDidMount(){
this.request()
}
//动态获取mock数据
request=()=>{
let baseUrl='https://www.easy-mock.com/mock/5c07a781d292dd2dc4f9caa8/mockapi'
axios.get(baseUrl+'/table/list').then((res)=>{
// console.log(JSON.stringify(res))
if(res.status=='200'&& res.data.code=='0'){
this.setState({
dataSource2:res.data.result
})
}
})
}
render(){
const columns=[
{
title:'id',
dataIndex:'id'
},
{
title:'用户名',
dataIndex:'userName'
},{
title:'性别',
dataIndex:'sex'
},
{
title:'爱好',
dataIndex:'hobby'
}
]
return(
)
}
}
```
我们可以看到list已经被调用了

在页面上也已经渲染出10条数据

我们可以注意到这些数据都是一样的,我们需要将我们的mock数据变成动态的,这个就涉及到它的一些语法知识了。

接下来我们再看渲染结果就可以发现数据都是动态的了。

平时也是后端给接口我们,如果能够自己mock数据的话,相信是一件很有成就感的事情,同时也能够减少后端同事的压力。
by:本文整理自单车后台管理系统视频,是博客园的园友@人道浮沉分享给我的,非常感谢他。
一起使用mock数据动态创建表格的更多相关文章
- js将json数据动态生成表格
今天开发中遇到需要展示动态数据的问题, 具体要求是后端传来的json字符串,要在前端页面以table表格的形式展示, 其实没啥难的,就是拼接table标签,纯属体力活,于是自己写了个呆萌,保存起来,以 ...
- FineUIMvc随笔 - 动态创建表格列
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 用户需求 用户希望实现动态创建表格列,在 WebForms 中,我们通过在 Page_Init 中创建列来实现: 但是在 MVC ...
- FineUIMvc随笔(1)动态创建表格列
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. <FineUIMvc随笔>目录 FineUIMvc随笔(1)动态创建表格列 FineUIMvc随笔(2)怎样在控件中 ...
- js/jq动态创建表格的行与列
之前做了一个项目,需求是能动态创建表格行,动态创建表格的列,度了很多资料,都没有动态创建列的插件,所以自己动手写了一个 需求大概是(下图) 1.动态添加一行.2.动态添加一列,3.删除行.4.删除列, ...
- js如何动态创建表格(两种方法)
js如何动态创建表格(两种方法) 一.总结 一句话总结: 1.方法一:写好创建表格的html代码,将之赋值给div的innerHTML. 2.方法二.直接用创建好的table元素的方法insertRo ...
- jQuery 根据JSON数据动态生成表格
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- 初探原生js根据json数据动态创建table
初探原生js根据json数据动态创建table 小生以实习生的职位进入了一家非纯软件的公司做asp.net开发,大半个月下来发现公司里居然没有前端工程师,这令我很诧异,跟着公司做项目,发现前端后台没有 ...
- js动态创建表格,删除行列的小例子
js动态创建表格,删除行列的实例代码. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...
- 第84天:jQuery动态创建表格
jQuery动态创建表格 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
随机推荐
- C_数据结构_数组的修改和删除
#include<stdio.h> typedef struct Node { int a,b; }node; node c[]; int n; void print() { int i; ...
- 关于dreamweaver的软件测评
最近在用javascript编写程序,于是便用到了dreamweaver .所以,想写一个关于dreamweaver的软件测评. 学生本人使用的是dreamweaver 8.首先,谈谈本人使用感受,打 ...
- 20135327郭皓--Linux内核分析第七周 可执行程序的装载
第七周 可执行程序的装载 郭皓 原创作品转载请注明出处 <Linux内核分析>MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 ...
- Opentsdb 启动显示配置文件不存在
今天 重新启动opentsdb 出现本地配置文件不存在 这不知道 我查了一下官网 了解到 You can use the --config command line argument to s ...
- python2 与 python3 实现共存
已有配置 Anaconda2+python2.7 方案一:直接安装官网原生python3.6 1.修改根目录下python.exe ->python3.exe pythonw.exe - ...
- Spring使用Cache、整合Ehcache(转)
今天在做Spring使用Cache.整合Ehcache时发现一篇非常好的文章,原文地址 http://elim.iteye.com/blog/2123030 从3.1开始,Spring引入了对Cach ...
- WinForm(WPF) splash screen demo with C#
https://www.codeproject.com/Articles/21062/Splash-Screen-Control https://www.codeproject.com/Article ...
- 转载: 一、linux cpu、内存、IO、网络的测试工具
来源地址: http://blog.csdn.net/wenwenxiong/article/details/77197997 记录一下 以后好找.. 一.linux cpu.内存.IO.网络的测试工 ...
- View.requestLayout
参考:安卓高手之路之图形系统(6)requestLayout的流程 一.invalidate和postInvalidate 这两个方法都是在重绘当前控件的时候调用的.invalidate在UI线程中调 ...
- 获取或操作DOM元素特性的几种方式
1. 通过元素的属性 可以直接通过元素属性获取或操作特性,但是只有公认的特性(非自定义的特性),例如id.title.style.align.className等,注意,因为在ECMAScript中, ...