当前位置: 首页 > 知识库问答 >
问题:

我无法用单击按钮呈现组件[重复]

伯晨
2023-03-14

当单击按钮时,它应该呈现一个元素,但它不起作用。如果我单击,什么也不会发生,也不会触发任何错误。我在使用材料UI

组件内容是一种形式

function handleBoxRegister(){
    return (
      <div>test</div>
    )
  }
<Button
          variant="contained"
          color="primary"
          className={classes.buttonRegister}
          onClick={handleBoxRegister}
        >
          <AddIcon>
          </AddIcon>
          Registrar paciente
        </Button>

共有1个答案

国言
2023-03-14

它在屏幕中间有一个div和一个带有几个按钮的侧边栏,其中一个是注册。然后当用户点击它时,屏幕中间应该会出现一个表单。

这就是state引入的地方,为了使表单从视图中出现/消失,您应该将数据(state)存储在boolean变量中,并检查它是true还是false,然后在呈现中根据变量的值显示或隐藏它。

下面我们使用&&运算符,只有当第一个值为true时,该运算符才会在其后面呈现组件。


function exmapleView (props) {
  const [isRegisterShown, setIsRegisterShown] = useState(false);
  return (
    <div>
      <Sidebar>
        <Button
          variant="contained"
          color="primary"
          className={classes.buttonRegister}
          onClick={() => setIsRegisterShown(true)}>
      </Sidebar>
      {isRegisterShown && <div>// Add the Register Form</div>}
      // Add Other Components here
    </div>
)
}

 类似资料:
  • 在我点击提交按钮后,我如何使页面刷新或更新页面中的内容?我尝试将(我知道不是React方式,具有相同的结果)放入提交函数(、)中,但POST请求没有得到响应 OpenTickets.js CardConversation.jsx

  • 我正在使用贝宝快捷结账按钮。问题是,如果用户更改付款金额,paypal按钮将再次呈现。当我点击paypal按钮时,有没有办法渲染该按钮?我与贝宝结帐工作。js https://developer.paypal.com/docs/archive/checkout/integrate/# 更新:在web组件中工作,所以所有代码都在renderedcall back()中

  • 我正在尝试通过xpath,css,ID...但什么都管用。 我总是得到错误:没有这样的元素:无法定位元素 我添加了一个明确的等待,但它仍然不起作用。 你能帮帮我吗? 单选按钮

  • 我试图用硒点击“下一页”按钮,但没有成功。我使用了正确的CSS选择器还是应该把它换成别的东西?

  • 我试图点击下面xpath提供的按钮。它显示以下错误: cmd中。