如何使用 React360 运行 VRbutton 的两个功能?

How to run two functions with VRbutton using React360?

我的反应很新,并且掌握了窍门。当前的问题是我有两个功能似乎无法使用 onClick 使用 Vrbutton(或任何按钮)同时使用。

我已经尝试了很多不同的方法(在下面显示了我注释掉的代码)来使 onClick 具有多个功能 运行。我得到一个 "functionName not defined" 错误,或者它根本不对输出做任何事情。


  _incrementCount = () => {
    this.setState({count: this.state.count + 1});
  };
  _setter = () => {
    this.setState({set: !this.state.set});
  }

  // clicker = () => {
  //   this._incrementCount;
  //   this._setter;
  // }

  render() {
    let btn_class = this.state.set ? styles.colorSet : styles.colorUnset;
    return (
      <View style={styles.panel}>
        <VrButton /*onClick={this._incrementCount}*/ /*onClick={this._setter}*/ /*onClick={this.clicker}*/ /*onClick={function(event){this._setter; this._incrementCount}}*/ style={btn_class} >
        <View style={styles.greetingBox}>
          <Text style={styles.greeting}>
            360 Model Viewer 
            {` Count: ${this.state.count}`}
          </Text>
        </View>
        </VrButton>
      </View>
    );
  }
};

我只是希望发生的事情是,在单击按钮时,_incrementCount 和 _setter 这两个函数会执行它们需要做的事情,我已经测试过它们没有任何问题,只是让按钮正常工作似乎成为这里的问题。我对此很陌生,所以请随时指出我在这里做错的所有事情!

您可以简单地创建一个匿名函数并使用该函数调用您想要的函数,例如,

<VrButton onClick={() => {this._incrementCount(); this._setter();}} style={btn_class} >

或者

<VrButton onClick={this.clicker} style={btn_class} >

clicker函数应该是,

clicker = () => {
  this._incrementCount();  //You forgot to invoke the function
  this._setter();
}