react 框架(antd)的使用方法
脚手架
安装 npm install -g create-react-app
引入:
import React, { Component } from "react";
import { Table, Button, Modal, Form, Input } from "antd";//引入antd相应模块
// import { formatDate } from "./utils/index";
import moment from "moment";//moment时间定义插件
import "antd/dist/antd.css";//引入样式
//使用例子:
const columns = [
{
title: "日期",
dataIndex: "date",
// 3.
render: (text, record, index) => {
// return formatDate(text);
return moment(text).format("YYYY-MM-DD HH:mm:ss");
}
},
{
title: "姓名",
dataIndex: "name"
},
{
title: "住址",
dataIndex: "address"
}
]; // add form 组件
const AddForm = props => {
console.log(props);
let { getFieldDecorator } = props.form;
return (
<Form labelCol={{ xl: 4 }} wrapperCol={{ xl: 10 }}>
<Form.Item label="姓名">
{getFieldDecorator("name", {
rules: [{ required: true, message: "这个玩意不能为空!" }]
})(<Input />)}
</Form.Item>
<Form.Item label="地址">
{getFieldDecorator("address", {
rules: [{ required: true, message: "这个玩意不能为空!" }]
})(<Input />)}
</Form.Item>
</Form>
);
}; // const AddFormWraper = Form.create({})(AddForm); class App extends Component {
state = {
dataSource: [],
addVisible: false
}; /**
* 打开Modal
*/
showModal = () => {
this.setState({
addVisible: true
});
}; /**
* 关闭Modal
*/
hideModal = () => {
this.setState({
addVisible: false
});
}; /**
* 获取数据
*/
getList = () => {
fetch("http://localhost:9090/user")
.then(response => response.json())
.then(res => {
console.log(res); // 1.
// for (var i = 0; i < res.length; i++) {
// var item = res[i];
// item.date = formatDate(item.date);
// } // console.log(res); // 2.
// res = res.map(item => {
// return { ...item, date: formatDate(item.date) };
// }); // console.log(res); this.setState({
dataSource: res
});
});
}; /**
* 添加确定
*/
hanldeOk = () => {
// validateFields()
// 要获取 孙子的 数据
// 1. ref 的方式
// console.log(this.refs.myForm);
// this.refs.myForm.validateFields((error, values) => {
// if (!error) {
// console.log(values);
// }
// });
// 2. 你把爷孙的关系,弄成父子的关系
this.props.form.validateFields((error, values) => {
if (!error) {
// console.log(values); fetch("http://localhost:9090/user", {
method: "POST",
body: JSON.stringify({
...values,
date: new Date().getTime()
}),
headers: {
"content-type": "application/json"
}
})
.then(response => response.json())
.then(res => {
console.log(res);
this.hideModal(); });
}
});
}; componentDidMount() {
this.getList();
// formatDate(new Date().getTime());
} render() {
let { dataSource, addVisible } = this.state;
return (
<div>
<Table
rowKey="id"
dataSource={dataSource}
columns={columns}
footer={data => {
return (
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "center"
}}
>
<Button type="primary" onClick={this.showModal}>
添加记录
</Button>
</div>
);
}}
/> <Modal
title="添加记录"
visible={addVisible}
maskClosable={false}
onCancel={this.hideModal}
onOk={this.hanldeOk}
>
{/* <AddFormWraper ref="myForm" /> */} <AddForm {...this.props} />
</Modal>
</div>
);
}
} export default Form.create({})(App);
react 框架(antd)的使用方法的更多相关文章
- 十九、React UI框架Antd(Ant Design)的使用——及react Antd的使用 button组件 Icon组件 Layout组件 DatePicker日期组件
一.Antd(Ant Design)的使用:引入全部Css样式 1.1 antd官网: https://ant.design/docs/react/introduce-cn 1.2 React中使用A ...
- React构建单页应用方法与实例
React作为目前最流行的前端框架之一,其受欢迎程度不容小觑,从这门框架上我们可以学到许多其他前端框架所缺失的东西,也是其创新性所在的地方,比如虚拟DOM.JSX等.那么接下来我们就来学习一下这门框架 ...
- 当react框架遇上百度地图
百度地图官方文档的使用指导是这样说的:在页面中引入<script type="text/javascript" src="http://api.map.baid ...
- 谈谈出入React框架踩过的坑
1 在JSX的元素中写入内联样式,例如<div style={"color:blue"}></div> 报错:warning:Style prop valu ...
- 【react】当react框架遇上百度地图
百度地图官方文档的使用指导是这样说的:在页面中引入<script type="text/javascript" src="http://api.map.baid ...
- D3.js(v3)+react框架 基础部分之数据绑定及其工作过程与绑定顺序
数据绑定: 将数据绑定到Dom上,是D3最大的特色.d3.select和d3.selectAll返回的元素的选择集.选择集上是没有数据的. 数据绑定就是使被选择元素里“含有”数据. 相关函数有两个: ...
- 搭建 webpack + react 框架爬坑之路
由于工程实践需要搭一个 webpack + react 框架,本人刚开始学,就照b站上的react黑马视频做,爬过无数个坑...希望读者能引以为戒.我的是macos系统 https://www.bil ...
- 【案例分享】在 React 框架中使用 SpreadJS 纯前端表格控件
[案例分享]在 React 框架中使用 SpreadJS 纯前端表格控件 本期葡萄城公开课,将由国电联合动力技术有限公司,资深前端开发工程师——李林慧女士,与大家在线分享“在 React 框架中使用 ...
- React框架随笔
React框架随笔 现在最热门的前端框架有AngularJS.React.Bootstrap等.自从接触了ReactJS,ReactJs的虚拟DOM(Virtual DOM)和组件化的开发深深的吸引了 ...
- React的第二种使用方法----脚手架方式
一.React的第二种使用方法-----脚手架 1.前提:Node.js >8.10 2.下载全局脚手架工具 npm i -g create-react-app 3.运行全局脚手架工具,创 ...
随机推荐
- 掌握 Kubernetes 故障排除技巧:kubectl命令的基本指南
Kubernetes 彻底改变了容器编排,简化了应用程序的管理和扩展.然而,与任何复杂系统一样,Kubernetes 集群也会遇到问题,需要及时解决才能保持最佳性能和可靠性.在本文中,我们将深入探讨必 ...
- 【atcoder 293 E - Sugoroku 4】【动态规划,递推】
import java.io.IOException; import java.util.Arrays; import java.util.Scanner; public class Main { s ...
- 专访OV季军|毕业转为freelancer,他如何斩获大量CG奖项?
"新锐先锋,玩转未来"--首届实时渲染3D动画创作大赛由瑞云科技主办,英伟达.青椒云.3DCAT实时渲染云协办,戴尔科技集团.Reallusion.英迈.万生华态.D5渲染器.中视 ...
- 记录--7个Js async/await高级用法
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 7个Js async/await高级用法 JavaScript的异步编程已经从回调(Callback)演进到Promise,再到如今广泛使 ...
- 记录--axios和loading不得不说的故事
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 loading的展示和取消可以说是每个前端对接口的时候都要关心的一个问题.这篇文章将要帮你解决的就是如何结合axios更加简洁的处理loa ...
- tableau 工作表分页
原创优阅达数据科技有限公司 https://mp.weixin.qq.com/s?__biz=MzA5MTU3NDI2NQ==&mid=2649465570&idx=1&sn= ...
- cmake:针对某些依赖 openssl-1.0 而机器上还有其他版本的 openssl
指定下列变量: -DOPENSSL_INCLUDE_DIR:指向 openssl-1.0 的 include 目录 -DOPENSSL_SSL_LIBRARIES:指向 openssl-1.0 的 l ...
- %USERPROFILE% 查看系统变量
%USERPROFILE% =C:\Users\用户名 win+r,输入cmd 回车 在cmd窗口下输入 set 回车,可以查看系统变量(想要了解更多 set 命令请看 这里)
- dotnet转换webservice返回的dataset
string paras = "p1=test1&p2=test2";//参数 byte[] bytes = Encoding.UTF8.GetBytes(paras); ...
- css实现多余文字隐藏,用省略号代替
.txt{ overflow: hidden; //溢出内容隐藏 white-space: nowrap; //强制文本在一行内显示 text-overflow: ellipsis; //当对象内文本 ...