From e4b6ccf7f01c26d301ff6c200c2262ffc5da66b4 Mon Sep 17 00:00:00 2001 From: Wei Zhu Date: Wed, 2 Nov 2016 15:09:54 +0800 Subject: [PATCH] docs: add dynamic setting demo for table (#3690) --- components/table/demo/dynamic-settings.md | 177 ++++++++++++++++++++++ 1 file changed, 177 insertions(+) create mode 100644 components/table/demo/dynamic-settings.md diff --git a/components/table/demo/dynamic-settings.md b/components/table/demo/dynamic-settings.md new file mode 100644 index 0000000000..e3352ae4ee --- /dev/null +++ b/components/table/demo/dynamic-settings.md @@ -0,0 +1,177 @@ +--- +order: 21 +title: + en-US: Dynamic Settings + zh-CN: 动态控制表格属性 +--- + +## zh-CN + +选择不同配置组合查看效果。 + +## en-US + +Select different settings to see the result. + +````jsx +import { Table, Icon, Select, Form } from 'antd'; + +const Option = Select.Option; +const FormItem = Form.Item; + +const columns = [{ + title: 'Name', + dataIndex: 'name', + key: 'name', + render: text => {text}, +}, { + title: 'Age', + dataIndex: 'age', + key: 'age', +}, { + title: 'Address', + dataIndex: 'address', + key: 'address', +}, { + title: 'Action', + key: 'action', + render: (text, record) => ( + + Action 一 {record.name} + + Delete + + + More actions + + + ), +}]; + +const data = [{ + key: '1', + name: 'John Brown', + age: 32, + address: 'New York No. 1 Lake Park', + description: 'My name is John Brown, I am 32 years old, living in New York No. 1 Lake Park.', +}, { + key: '2', + name: 'Jim Green', + age: 42, + address: 'London No. 1 Lake Park', + description: 'My name is Jim Green, I am 42 years old, living in London No. 1 Lake Park.', +}, { + key: '3', + name: 'Joe Black', + age: 32, + address: 'Sidney No. 1 Lake Park', + description: 'My name is Joe Black, I am 32 years old, living in Sidney No. 1 Lake Park.', +}]; + +const expandedRowRender = record =>

{record.description}

; +const title = () => 'Here is title'; +const footer = () => 'Here is footer'; + +class Demo extends React.Component { + state = { + size: 'default', + pagination: true, + expandedRowRender, + loading: false, + bordered: true, + header: true, + title, + footer, + } + + handleToggle = (prop) => { + return (value) => { + this.setState({ [prop]: value === 'show' }); + }; + } + + handleSizeChange = (value) => { + this.setState({ size: value }); + } + + handleExpandChange = (value) => { + this.setState({ expandedRowRender: value === 'enabled' ? expandedRowRender : false }); + } + + handleTitleChange = (value) => { + this.setState({ title: value === 'show' ? title : undefined }); + } + + handleFooterChange = (value) => { + this.setState({ footer: value === 'show' ? footer : undefined }); + } + + render() { + return ( +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + ); + } +} + +ReactDOM.render(, mountNode); +```` + +