javascript - 使用状态在 React 中显示/隐藏组件

标签 javascript reactjs

我试图在检查状态值时隐藏/显示组件:

import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import Button from '@material-ui/core/Button'

class App extends Component {
    constructor(props) {
        super(props);
        this.state = true;
    }

    render() {    
        return (
          <div className="App">
            {this.state && <Button variant="raised" onClick={this.state=false}>Button</Button>}

          </div>
        );
    }
}

export default App;

我不知道错误/错误代码在哪里,但渲染似乎没有刷新。

最佳答案

您使用不当。你必须像这样初始化状态

constructor(props) {
  super(props);
  this.state = {show: true}
}

然后像这样渲染

return (
    <div className="App">
        {this.state.show && <Button variant="raised" onClick={() => this.setState({show:false})}>Button</Button>}

      </div>
);

关于javascript - 使用状态在 React 中显示/隐藏组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52605304/

相关文章:

javascript - 如何在调用函数后动态更改变量

javascript - 通量错误: Uncaught ReferenceError: Flux is not defined

javascript - Chrome 扩展程序 : XMLHttpRequest canceled (status == 0)

javascript - Bootstrap : Collapse and Tooltip together

javascript - 有没有办法在javascript中捕获网页搜索词(CTRL+F)?

css - 具有 CSS 模块和 React 的多个类名

html - CSS 变换移动点击处理程序?

javascript - 如何做动态div - 展开折叠循环

node.js - Reactjs 中的 Owl Carousel 2 服务器端渲染

class - react : Are classes without state still considered stateless/pure?