We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
您的功能请求是否与问题有关?请描述。
Table的footer里有组件且Table的长度超出屏幕时,组件长度和Table长度不一样
描述您想要的解决方案
Table长度和footer内的组件长度一致
附加上下文
import React from 'react'; import ReactDOM from 'react-dom'; import { Table, Button, Checkbox, Pagination, Loader } from 'uiw'; class Demo extends React.Component { constructor(props) { super(props); this.state = { // 选中的 key checked: [], loading: false, dataSource: [ { name: '邓紫棋', age: '12', info: '又名G.E.M.,原名邓诗颖,1991年8月16日生于中国上海,中国香港创作型女歌手。' }, { name: '李易峰', age: '32', info: '1987年5月4日出生于四川成都,中国内地男演员、流行乐歌手、影视制片人' }, { name: '范冰冰', age: '23', info: '1981年9月16日出生于山东青岛,中国影视女演员、制片人、流行乐女歌手' }, { name: '杨幂', age: '34', info: '1986年9月12日出生于北京市,中国内地影视女演员、流行乐歌手、影视制片人。' }, { name: 'Angelababy', age: '54', info: '1989年2月28日出生于上海市,华语影视女演员、时尚模特。' }, { name: '唐嫣', age: '12', info: '1983年12月6日出生于上海市,毕业于中央戏剧学院表演系本科班' }, { name: '吴亦凡', age: '4', info: '1990年11月06日出生于广东省广州市,华语影视男演员、流行乐歌手。' }, ], columns: [ { title: (data, rowNum, colNum) => { const indeterminate = this.state.dataSource.length !== this.state.checked.length && this.state.checked.length > 0; const checked = this.state.dataSource.length === this.state.checked.length; return ( <Checkbox checked={checked} indeterminate={indeterminate} onClick={(evn) => { let checked = this.state.dataSource.map((item, idx) => idx); if(!evn.target.checked) { checked = []; } this.setState({ checked }); }} /> ); }, key: 'checked', render: (text, key, rowData, rowNumber, columnNumber) => { return ( <Checkbox checked={rowData.checked} onClick={this.onClickCheckedItem.bind(this, rowNumber)} /> ); } }, { title: '名字', key: 'name', width:200, ellipsis: true, }, { title: '年龄', key: 'age', width:200, ellipsis: true, }, { title: '地址', key: 'info', width:800, ellipsis: true, }, ] } } onClickCheckedItem(rowNumber, env) { let { checked } = this.state; const isChecked = env.target.checked; if(isChecked) { // 添加到选中数组中 checked.push(rowNumber) checked = checked.sort((a, b) => a - b); } else { // 删除选中项 checked.splice(checked.indexOf(rowNumber), 1); } this.setState({ checked }); } render() { const { checked } = this.state; const dataSource = this.state.dataSource.map((item, idx) => { const isChecked = checked.indexOf(idx) > -1; return { checked: isChecked, ...item }; }); return ( <div> <Loader loading={this.state.loading} style={{ display: 'block' }}> <Table columns={this.state.columns} data={dataSource} footer={ <Pagination current={2} pageSize={10} total={30} divider onChange={(current, total, pageSize) => { this.setState({ loading: true }); const timer = setTimeout(() => { // 模拟变更数据 const dataSource = this.state.dataSource.map(item => { item.age = Number(item.age) + current; return item; }); // 翻页 API 获取数据 this.setState({ checked: [], dataSource, loading: false }); }, 2000); }} /> } /> </Loader> </div> ); } } ReactDOM.render(<Demo />, _mount_);
The text was updated successfully, but these errors were encountered:
fix(Table): footer属性内的元素,和Table表格宽度不一致 #621 (#625)
6f54fca
[v4.13.6] fix(Table): footer属性内的元素,和Table表格宽度不一致 #621 (#625) 6f54fca
7464c89
@didiboji 已解决
Sorry, something went wrong.
[v4.13.7] fix(Table): footer属性内的元素,和Table表格宽度不一致 #621 (#625) 6f54fca
195195a
No branches or pull requests
您的功能请求是否与问题有关?请描述。
Table的footer里有组件且Table的长度超出屏幕时,组件长度和Table长度不一样
描述您想要的解决方案
Table长度和footer内的组件长度一致
附加上下文
The text was updated successfully, but these errors were encountered: