其他函数内部的reactjs es6调用函数抛出未定义的函数

时间:2019-11-20 02:15:21

标签: reactjs redux-saga

Here is my code

在App.js文件中,有一个按钮组件。我正在调用hi函数onclick事件。在这种情况下,我想使用redux saga来调用sayHello();

如果我直接在按钮单击事件上使用sayHello,则代码工作正常。但是我的要求是在另一个函数中调用它。以下是整个文件供参考。感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

在另一个函数中调用某个函数时,必须指定范围。 如下使用它:

const hi = () => {
 console.log("hiiiiiiiiiiiiii");
 this.sayHello();
};

希望这会有所帮助!

答案 1 :(得分:0)

您应该在组件范围内定义ur函数。

因为功能SayHello是在props中定义的。

就像这样:

class App extends Component {

  hi = () => {
    onsole.log("hiiiiiiiiiiiiii");
    this.props.sayHello();
  }

  render() {
    const { hello, exampleTask } = this.props;
    return (
      <div className="App">
        <h1>Hello {hello}</h1>
        <h2>Redux-saga demo. Start editing to see some magic happen!</h2>
        <button onClick={this.hi}>Say Hello!</button>
        <button onClick={exampleTask}>Example Task</button>
      </div>
    );
  }
}