javascript - 在事件中启用 react 渲染或禁用它

标签 javascript reactjs

我正在制作一个弹出菜单,但我不知道如何让它弹出或弹出 :D。 我正在考虑制作某种 onclick={handleClick()} ,它将包含某种可以打开或关闭渲染器的代码。 这是我的 react 代码

    class App extends React.Component {
    state = {
        //a javascript object
        objects: [
            {
                option: 'Edit Event',
            },
            {
                option: 'Delete Event',
            },
        ]
    }
    cancelHandler() {
        display(none);
    }
    render() {
        return (
            <div className="popUp">
                <div className="object">
                    {
                        this.state.objects.map((item, index) => {
                            return (
                                <div key={index} className="container">
                                    <p className="menuItems">{item.option}</p>
                                </div>
                            )
                        })
                    }
                </div>
                <div className="cancel-button">
                    <p className="cancel">Cancel</p>
                </div>
            </div>
        );
    }
}
ReactDOM.render(<App />, document.getElementById('menu'));

我想要发生的是,当我按下取消 p 标签时,页面上的所有元素(该文件中的元素)都会消失。

最佳答案

我更喜欢按照您需要的方式使用 bool 变量和函数

  class App extends React.Component {
      this.state = {
          renderElements: true,
          objects: [
             {
                 option: 'Edit Event',
        },
        {
            option: 'Delete Event',
        },
        ]
      }
      cancelHandler = () => {
          this.setState({ 
               renderElements: false
          });
       }
      render() {
            const { renderElements} this.state;
            return (
                <div className="popUp">
                    { renderElements && (<div className="object">
                      {
                    this.state.objects.map((item, index) => {
                        return (
                            <div key={index} className="container">
                                <p className="menuItems">{item.option}</p>
                            </div>
                        )
                    })
                }
            </div>
            <div className="cancel-button">
                <p className="cancel" onClick={this.cancelHandler}>Cancel</p>
            </div>
           )}
        </div>
           );
       }
    }
    ReactDOM.render(<App />, document.getElementById('menu'));

此功能将在您单击取消时隐藏,否则将显示

关于javascript - 在事件中启用 react 渲染或禁用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52308470/

相关文章:

Javascript 2 对象数组,从一个对象数组中获取值并将其分配给另一个对象数组

javascript - 我怎样才能从 2 个函数创建一个?

javascript - 下一分钟开始时的开始间隔

javascript - JS鼠标悬停,悬停

IE 中的 Javascript 权限被拒绝错误,创建 xml 文件时在 firefox 中未定义 ActiveXObject

reactjs - ReduxForm 装饰器,弹出 create-react-app 后出现无类分配错误

javascript - 使用 css 时的自动边距

javascript - 如何在reactjs中遍历key-value

javascript - Sammyjs 和 pagerjs 路由

javascript - 单击子项时如何删除父项