logoAnt Design

⌘ K
  • Design
  • Development
  • Components
  • Blog
  • Resources
5.3.3
  • Ant Design of React
  • Getting Started
  • Real project with Umi
  • Use in create-react-app
  • Use in TypeScript
  • CSS Compatible
  • Customize Theme
  • Use custom date library
  • V4 to V5
  • Third-Party Libraries
  • Internationalization
  • FAQ
  • Contributing
  • Change Log
Your First Example
1. Create a codesandbox
2. Use and modify an antd component
3. Explore more components
4. Next Steps
Test with Jest
Import on Demand
Customize your Workflow

Getting Started

Ant Design of ReactReal project with Umi

Resources

Ant Design Charts
Ant Design Pro
Ant Design Pro Components
Ant Design Mobile
Ant Design Mini
Ant Design Landing-Landing Templates
Scaffolds-Scaffold Market
Umi-React Application Framework
dumi-Component doc generator
qiankun-Micro-Frontends Framework
ahooks-React Hooks Library
Ant Motion-Motion Solution
China Mirror 🇨🇳

Community

Awesome Ant Design
Medium
Twitter
yuqueAnt Design in YuQue
Ant Design in Zhihu
Experience Cloud Blog
seeconfSEE Conf-Experience Tech Conference

Help

GitHub
Change Log
FAQ
Bug Report
Issues
Discussions
StackOverflow
SegmentFault

Ant XTechMore Products

yuqueYuQue-Document Collaboration Platform
AntVAntV-Data Visualization
EggEgg-Enterprise Node.js Framework
kitchenKitchen-Sketch Toolkit
xtechAnt Financial Experience Tech
Theme Editor
Made with ❤ by
Ant Group and Ant Design Community

Ant Design React is dedicated to providing a good development experience for programmers. Before starting, it is recommended to learn React and ES2015 first, and correctly install and configure Node.js v8 or above.

The official guide also assumes that you have intermediate knowledge about HTML, CSS, and JavaScript, and React. If you are just starting to learn front-end or React, it may not be the best idea to use the UI framework as your first step.

Finally, if you are working in a local development environment, please refer to Install and Initialization section of "Use in create-react-app".


Your First Example

Here is a simple online codesandbox demo of an Ant Design component to show the usage of Ant Design React.

1. Create a codesandbox

Visit http://u.ant.design/codesandbox-repro to create a codesandbox -- don't forget to press the save button as well to create a new instance.

2. Use and modify an antd component

Replace the contents of index.js with the following code. As you can see, there is no difference between antd's components and typical React components.

If you have already set things up by following the Install and Initialization section of "Use in create-react-app", replace the content of /src/index.js as follows:

import React, { useState } from 'react';
import { render } from 'react-dom';
import { DatePicker, message } from 'antd';
import 'antd/dist/reset.css';
import './index.css';
const App = () => {
const [date, setDate] = useState(null);
const handleChange = (value) => {
message.info(`Selected Date: ${value ? value.format('YYYY-MM-DD') : 'None'}`);
setDate(value);
};
return (
<div style={{ width: 400, margin: '100px auto' }}>
<DatePicker onChange={handleChange} />
<div style={{ marginTop: 16 }}>
Selected Date: {date ? date.format('YYYY-MM-DD') : 'None'}
</div>
</div>
);
};
render(<App />, document.getElementById('root'));

3. Explore more components

You can view the list of components in the side menu of the Components page, such as the Alert component. Plenty of examples are also provided in the component pages and API documentation as well.

Click the "Open in Editor" icon in the first example to open an editor with source code to use out-of-the-box. Now you can import the Alert component into the codesandbox:

- import { DatePicker, message } from 'antd';
+ import { DatePicker, message, Alert } from 'antd';

Now add the following jsx inside the render function.

<DatePicker onChange={value => this.handleChange(value)} />
<div style={{ marginTop: 20 }}>
- Selected Date: {date ? date.format('YYYY-MM-DD') : 'None'}
+ <Alert message="Selected Date" description={date ? date.format('YYYY-MM-DD') : 'None'} />
</div>

Select a date, and you can see the effect in the preview area on the right:

codesandbox screenshot

OK! Now that you know the basics of using antd components, you are welcome to explore more components in the codesandbox. When reporting a bug with ant design, we also strongly recommend using codesandbox to provide a reproducible demo as well.

4. Next Steps

During actual real-world project development, you will most likely need a development workflow consisting of compile/build/deploy/lint/debug/ deployment. You can read the following documents on the subject or use the following scaffolds and examples provided below:

  • Ant Design Pro
  • antd-admin
  • d2-admin
  • Use in Next
  • More scaffolds at Scaffold Market

Test with Jest

If you use create-react-app follow the instructions here instead.

Jest does not support esm modules, and Ant Design uses them. In order to test your Ant Design application with Jest you have to add the following to your Jest config :

"transform": { "^.+\\.(ts|tsx|js|jsx)?quot;: "ts-jest" }

Import on Demand

antd supports tree shaking of ES modules, so using import { Button } from 'antd'; would drop js code you didn't use.

Customize your Workflow

If you want to customize your workflow, we recommend using webpack to build and debug code. You can try out plenty of boilerplates available in the React ecosystem.

There are also some scaffolds which have already been integrated into antd, so you can try and start with one of these and even contribute.