首页 > 解决方案 > 在按钮上单击显示反应表

问题描述

我有一个带有子组件的反应表,在子组件中,我有 2 个按钮单击每个按钮需要显示反应表,请帮助我。

ex:
class Sample extends React{
firstFun=()=>{
return <ReactTable data={} columns={columns}
}
secondFun=()=>{
return <Reacttable data={} columns={columns}
}
subcompo=()=>{
// some code
<bt1 onclick={this.firstFun}/>
<bt2 onclick={this.secondFun}/>
}
render(){
return(
<ReactTable
data={}
submcomponent={this.subcompo}
/>
)}
}

标签: javascriptreactjsreact-table

解决方案


您可以在状态下使用布尔值设置单击和激活哪个按钮并显示不同的表格。是这样的类似于你正在寻找的东西:

class Sample extends React {
    state = {
        firstButtonActive: false,
        secondButtonActive: false
    }
    handleFirstButtonClick = () => {
        this.setState({ firstButtonActive: !this.state.firstButtonActive})
    }
    handleSecondButtonClick = () => {
        this.setState({ secondButtonActive: !this.state.secondButtonActive })
    }
    subcompo = () => {
        // some code
        <bt1 onclick={this.handleFirstButtonClick} />
        <bt2 onclick={this.handleSecondButtonClick} />
    } 

    render() {
        const { firstButtonActive, secondButtonActive } = this.state;
        return (
            <>
                <ReactTable
                    data={}
                    submcomponent={this.subcompo}
                />

                {firstButtonActive && <ReactTable data={} columns={columns}/>}

                {secondButtonActive && <ReactTable data={} columns={columns} />}
            </>
        )
    }
}

推荐阅读