React - 如何从另一个函数内部调用一个函数

Max*_*ynn 6 javascript reactjs

假设我有以下布局:

class Navigation extends React.Component {
 primaryFun() { console.log('funn') }

 secondaryFun() {
  this.primaryFun();
 }
}
Run Code Online (Sandbox Code Playgroud)

我本来希望这会调用primary,但我得到的是未定义的,好的。

所以我想我应该添加一个构造函数来将函数绑定到此:

constructor(props) {
 super(props)
 this.primaryFun = this.primaryFun.bind(this);
}
Run Code Online (Sandbox Code Playgroud)

但主要的乐趣仍然没有定义。

在我的实际项目中,我在 mouseOut 事件上调用这些。

感觉上面的内容应该可以工作,而且 React 的文档到处都是,所以在这里找不到太多。

Har*_*dia 5

您是否正在寻找类似的东西,在另一个函数中调用一个函数

import React, { Component } from 'react';
import './App.css'

class App extends Component {
  constructor(){
    super()
    this.mouseClick = this.mouseClick.bind(this);
    this.primaryFun = this.primaryFun.bind(this);
    this.secondaryFun = this.secondaryFun.bind(this);
  }

  primaryFun(){
    console.log('primaryFun funn') 
  }

  secondaryFun(){
    console.log('secondaryFun funn') 
    this.primaryFun()
  }

  mouseClick(){
    this.secondaryFun()
  }

  render() {
    return (
      <div onClick={this.mouseClick}>   
      Hello World!
      </div>
    );
  }
}
export default App;
Run Code Online (Sandbox Code Playgroud)

在这里,当您单击“Hello world” secondaryFun被调用,并且在secondaryFun内部,primaryFun被触发