ant-design/components/transfer/demo/basic.md

64 lines
1.2 KiB
Markdown
Raw Normal View History

2015-11-25 23:17:06 +08:00
# 基本用法
- order: 0
2015-12-24 14:56:48 +08:00
最基本的用法。
2015-11-25 23:17:06 +08:00
---
````jsx
2015-12-15 17:08:34 +08:00
import { Transfer, Button } from 'antd';
2015-11-25 23:17:06 +08:00
2015-11-26 11:18:37 +08:00
const App = React.createClass({
getInitialState() {
return {
2015-12-21 15:29:02 +08:00
mockData: [],
targetKeys: [],
2015-11-26 11:18:37 +08:00
};
},
2015-11-26 16:07:11 +08:00
componentDidMount() {
this.getMock();
},
2015-11-26 11:18:37 +08:00
getMock() {
2015-12-21 15:29:02 +08:00
let targetKeys = [];
2015-11-26 11:18:37 +08:00
let mockData = [];
2015-12-18 09:05:02 +08:00
for (let i = 0; i < 20; i++) {
2015-12-21 15:29:02 +08:00
const data = {
key: i,
title: `内容${i + 1}`,
description: `内容${i + 1}的描述`,
2015-11-26 11:18:37 +08:00
chosen: Math.random() * 2 > 1
2015-12-21 15:29:02 +08:00
};
if (data.chosen) {
targetKeys.push(data.key);
}
mockData.push(data);
2015-11-26 11:18:37 +08:00
}
2015-12-28 11:03:58 +08:00
this.setState({ mockData, targetKeys });
2015-11-26 11:18:37 +08:00
},
2016-02-01 14:07:17 +08:00
handleChange(targetKeys, direction, moveKeys) {
console.log(targetKeys, direction, moveKeys);
2015-12-28 11:03:58 +08:00
this.setState({ targetKeys });
2015-12-21 15:29:02 +08:00
},
2015-12-27 16:20:59 +08:00
renderFooter() {
return (
<Button type="primary" size="small" style={{ float: 'right', margin: '5' }}
onClick={this.getMock}>
刷新
</Button>
);
2015-12-21 15:29:02 +08:00
},
2015-11-26 11:18:37 +08:00
render() {
2015-12-28 11:03:58 +08:00
return (
2015-12-21 15:29:02 +08:00
<Transfer
dataSource={this.state.mockData}
targetKeys={this.state.targetKeys}
onChange={this.handleChange}
2015-12-28 11:03:58 +08:00
render={item => item.title} />
);
2015-11-26 11:18:37 +08:00
}
});
ReactDOM.render(<App />, mountNode);
2015-11-25 23:17:06 +08:00
````