OnClick не работает кнопки реакции, несмотря на привязку

Константа ? Я бы использовал перечисление .

public enum Constants { 
    NAME_1("Value1"),
    NAME_2("Value2"),
    NAME_3("Value3");

    private String value;

    Constants(String value) {
        this.value = value;
    }

    public String value() {
        return value;
    }
}

Значение, например. NAME_2 можно получить следующим образом:

String name2value = Constants.NAME_2.value();

Только дать перечислению немного более разумное имя, например. Settings, Defaults и т. д., независимо от того, какие фактические пары на самом деле представляют.

0
задан Thanatos 18 March 2019 в 19:40
поделиться

2 ответа

попробуйте

openmenubar = () => {

...

}

и

<button onClick = { () => this.openmenubar() } > </button>
0
ответ дан Yusuf Altıparmak 18 March 2019 в 19:40
поделиться

Синтаксис должен быть

onClick={this.openMenuBar}

Или

onClick={() => { return this.openMenuBar()}}

Или

onClick={() => this.openMenuBar() }

class MenuIcon extends React.Component {
  render(){
    return <i className="fas fa-plus" />
  }
}
class HeaderComponent extends React.Component {
    constructor(props){
      super(props);
      this.openMenuBar = this.openMenuBar.bind(this);
    }
     
    openMenuBar(){
      console.log("open");
    }

    render(){
      return(
          <div>
            
            <button onClick={this.openMenuBar}> <MenuIcon /></button>
            <button onClick={() => this.openMenuBar()}> btn2</button>
            <button onClick={() => { return this.openMenuBar()}}> btn3</button>
            
          </div>
    );
}
}
ReactDOM.render(<HeaderComponent />, document.getElementById('root'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">

<div id="root"></div>
[1111 ]

0
ответ дан bird 18 March 2019 в 19:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: