Reactjs 无法使用MaterialTable中的onChange函数转到下一页

Reactjs 无法使用MaterialTable中的onChange函数转到下一页,reactjs,material-ui,material-table,Reactjs,Material Ui,Material Table,我正在尝试更改MaterialTable中的页面,但无法更改。虽然页面大小功能正常工作,但页面更改功能不正常 以下是我的状态: constructor(props) { super(props) this.state = { status: false, message: "", page: 0, pageSize: 5, } } 在MaterialTable的内部,我有: <Ma

我正在尝试更改MaterialTable中的页面,但无法更改。虽然页面大小功能正常工作,但页面更改功能不正常

以下是我的状态:

constructor(props) {
    super(props)
    this.state = {
        status: false,
        message: "",
        page: 0,
        pageSize: 5,
    }
}
在MaterialTable的内部,我有:

<MaterialTable
                            title=""
                            page={this.state.page}
                            totalCount={this.props.operations.ids ? this.props.operations.ids.length : 0}
                            columns={[
                                {
                                    title: 'Sr No.', field: 'serialNumber', render: rowData => {
                                        return _.findIndex(renderingData, { "id": rowData.id }) + 1
                                    }
                                },
                                { title: 'Time Stamp', field: 'date', render: rowData => { return moment(rowData.date).format("YYYY/MM/DD hh:mm a") } },
                                { title: 'Details', field: 'name' },
                                {
                                    title: 'View Details', field: 'viewDetails', render: rowData => {
                                        return <Button
                                            variant="contained"
                                            color={"primary"}
                                            onClick={() => this.props.setTab(rowData)}
                                        >View</Button>
                                    }
                                },
                            ]}
                            onChangePage={(page, pageSize) => {
                                this.setState({ ...this.state, page, pageSize})
                            }}
data={renderingData}
/>
{
返回u.findIndex(renderingData,{“id”:rowData.id})+1
}
},
{title:'Time Stamp',field:'date',render:rowData=>{return moment(rowData.date).format(“YYYY/MM/DD hh:MM a”)},
{title:'Details',field:'name'},
{
标题:“查看详细信息”,字段:“查看详细信息”,呈现:rowData=>{
返回this.props.setTab(rowData)}
>看法
}
},
]}
onChangePage={(页面,页面大小)=>{
this.setState({…this.state,page,pageSize})
}}
数据={renderingData}
/>

如果需要对此进行任何修改,请告知我。我仍然无法解决此问题。

单击“下一步”按钮,您还需要增加页码

onChangePage={(事件,页面)=>{this.setState({…this.state,页面}}}}

也改变
函数handleChangeRowsPerPage(event){setRowsPerPage(+event.target.value);}

确定,因此问题是,即使单击“下一页”按钮,进入物料表的数据仍然相同。我在数据中加入了这个。代码的其余部分是相同的

data={renderingData.slice(this.state.page*this.state.pageSize, this.state.page*this.state.pageSize + this.state.pageSize)}

此代码确保在单击下一页时显示新数据。

这还取决于表中有多少数据,如果表中有足够的数据,则将启用“下一步”按钮,否则将禁用表中有6个元素。最初它显示5行,但当我单击“下一步”时,它应该在新页面上显示第6行。是的,它是正确的,这是预期的行为,因为您的表pageSize为5,因此它只显示表中的5个元素,第6个元素将显示在下一页是的,这是预期的。但问题是,下一页没有第六个元素。单击“下一步”时,它只显示与之前显示的5个元素相同的元素。理想情况下,它应该在下一页上显示第6个元素,并且应该是唯一的一行。这是一个错误。显然,我们不能直接写第+1页。我还尝试了page:page+1,它没有给出任何错误,但即使这样也不起作用。它抛出了什么错误,如果你可以在codepen或codesandboxI中复制,它也会很有帮助。我不确定如何在codepen中复制整个内容,这也是一个公司项目。我尝试使用page:page+1,虽然它没有给出任何错误,但仍然无法解决问题。我尝试了将event用作第一个参数的新代码,但没有显示任何差异。此外,事件词在Visual Studio中被淡出(VS淡出未在任何地方调用的变量/函数),这意味着可能没有任何东西触发它?您使用的是哪个版本的材质Ui?