第三方React组件未更新

时间:2019-08-07 16:53:18

标签: reactjs react-component

我有一个组件,该组件调用名为ReactCollapsingTable的第三方组件,如下所示:

export class MyComponent extends Component <DataTableProps, {rows: any, columns: any} > {

    constructor(props: DataTableProps) {
        super(props);
        this.state = {rows: this.getRows(), columns: this.getColumns() };
    }

    getRows() {
        ...
        return rows;
    }

    getColumns() {
        ...
        return columns;
    }

    componentDidUpdate(prevProps: Readonly<DataTableProps>): void {
        if (!_.isEqual(this.props, prevProps)) {
            this.setState({rows: this.getRows(), columns: this.getColumns() });
        }
    }

    render() {
        return <ReactCollapsingTable
            rows={this.state.rows}
            columns={this.state.columns}
        />;
    }
}

当我的组件更新时,它会用this.state.rows更改this.state.columnsthis.setState的值。在我的render函数中,我将this.state.rowsthis.state.columns的值记录到控制台中,并且它们按预期进行了更改。但是ReactCollapsingTable不变。我是在做错什么还是该组件?如果这是第三方的组件故障,是否可以解决?也许卸下它,然后放回去,或者沿着这些方向放东西。谢谢。

1 个答案:

答案 0 :(得分:0)

显然,这是由第三方组件引起的。尝试使用该库的其他版本,可以解决我的问题。另外,使用其他库也不会出现此问题。