You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
4.8 KiB

7 years ago
---
order: 4
7 years ago
title:
7 years ago
zh-CN: 信息预览抽屉
en-US: Preview drawer
7 years ago
---
## zh-CN
7 years ago
需要快速预览对象概要时使用,点击遮罩区关闭。
7 years ago
7 years ago
## en-US
7 years ago
Use when you need to quickly preview the outline of the object. Such as list item preview.
7 years ago
```jsx
7 years ago
import { Drawer, List, Avatar, Divider, Col, Row } from 'antd';
7 years ago
const pStyle = {
fontSize: 16,
color: 'rgba(0,0,0,0.85)',
lineHeight: '24px',
display: 'block',
marginBottom: 16,
};
const DescriptionItem = ({ title, content }) => (
<div
style={{
fontSize: 14,
lineHeight: '22px',
marginBottom: 7,
color: 'rgba(0,0,0,0.65)',
}}
>
<p
7 years ago
style={{
marginRight: 8,
display: 'inline-block',
color: 'rgba(0,0,0,0.85)',
7 years ago
}}
>
{title}:
</p>
{content}
</div>
);
7 years ago
class App extends React.Component {
state = { visible: false };
6 years ago
showDrawer = () => {
this.setState({
visible: true,
});
};
6 years ago
onClose = () => {
this.setState({
visible: false,
});
};
6 years ago
7 years ago
render() {
return (
<div>
7 years ago
<List
dataSource={[
{
name: 'Lily',
},
{
name: 'Lily',
},
]}
bordered
renderItem={item => (
<List.Item key={item.id} actions={[<a onClick={this.showDrawer}>View Profile</a>]}>
<List.Item.Meta
avatar={
<Avatar src="https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png" />
}
title={<a href="https://ant.design/index-cn">{item.name}</a>}
7 years ago
description="Progresser AFX"
/>
</List.Item>
)}
/>
7 years ago
<Drawer
width={640}
placement="right"
closable={false}
onClose={this.onClose}
visible={this.state.visible}
>
<p style={{ ...pStyle, marginBottom: 24 }}>User Profile</p>
<p style={pStyle}>Personal</p>
<Row>
<Col span={12}>
<DescriptionItem title="Full Name" content="Lily" />{' '}
</Col>
<Col span={12}>
<DescriptionItem title="Account" content="AntDesign@example.com" />
</Col>
</Row>
<Row>
<Col span={12}>
<DescriptionItem title="City" content="HangZhou" />
</Col>
<Col span={12}>
<DescriptionItem title="Country" content="China🇨🇳" />
</Col>
</Row>
<Row>
<Col span={12}>
<DescriptionItem title="Birthday" content="February 2,1900" />
</Col>
<Col span={12}>
<DescriptionItem title="Website" content="-" />
</Col>
</Row>
<Row>
<Col span={24}>
<DescriptionItem
title="Message"
content="Make things as simple as possible but no simpler."
/>
</Col>
</Row>
<Divider />
<p style={pStyle}>Company</p>
<Row>
<Col span={12}>
<DescriptionItem title="Position" content="Programmer" />
</Col>
<Col span={12}>
<DescriptionItem title="Responsibilities" content="Coding" />
</Col>
</Row>
<Row>
<Col span={12}>
<DescriptionItem title="Department" content="AFX" />
</Col>
<Col span={12}>
7 years ago
<DescriptionItem title="Supervisor" content={<a>Lin</a>} />
7 years ago
</Col>
</Row>
<Row>
<Col span={24}>
<DescriptionItem
title="Skills"
content="C / C + +, data structures, software engineering, operating systems, computer networks, databases, compiler theory, computer architecture, Microcomputer Principle and Interface Technology, Computer English, Java, ASP, etc."
/>
</Col>
</Row>
<Divider />
<p style={pStyle}>Contacts</p>
<Row>
<Col span={12}>
<DescriptionItem title="Email" content="AntDesign@example.com" />
</Col>
<Col span={12}>
<DescriptionItem title="Phone Number" content="+86 181 0000 0000" />
</Col>
</Row>
<Row>
<Col span={24}>
<DescriptionItem
title="Github"
content={(
7 years ago
<a href="http://github.com/ant-design/ant-design/">
github.com/ant-design/ant-design/
</a>
)}
7 years ago
/>
</Col>
</Row>
</Drawer>
</div>
);
}
}
ReactDOM.render(<App />, mountNode);
```