Javascript _此3.state.method不是函数

Javascript _此3.state.method不是函数,javascript,reactjs,binding,es6-class,Javascript,Reactjs,Binding,Es6 Class,我有一个.js文件: 我的类组件: [...] constructor(props, context) { [...] this.method1 = this.method1.bind(this); } anotherMethod() { [...] this.state.method1(); } method1() { //Do something } 我收到以下错误:\ this3.state.method1不是函数。我试着遵循一些其他已知的解决

我有一个.js文件:

我的类组件:

[...]
constructor(props, context) {
    [...]
    this.method1 = this.method1.bind(this);
}

anotherMethod() {
    [...]
    this.state.method1();
}

method1() {
    //Do something
}
我收到以下错误:\ this3.state.method1不是函数。我试着遵循一些其他已知的解决方案

我有几个问题:

  • 根本原因是什么
  • 这是什么?它是从哪里来的
  • 谢谢


    编辑:我找到了解决方案,即删除“状态”。它应该是
    this.state.method1()
    ,而不是
    this.method1()
    。只是好奇为什么我在上面绑定时不需要“状态”?

    因为
    method1
    不在
    state
    中,这是组件自身的功能,除非
    method1
    state
    中,如下所示

    this.state = {method1:() =>{ /*Do something*/ }}
    

    您可以阅读关于和的
    React
    网站。

    因为
    method1
    未处于
    状态
    ,这是组件自身功能,除非
    method1
    处于
    状态
    如下所示

    this.state = {method1:() =>{ /*Do something*/ }}
    

    您可以阅读有关和的
    React
    网站。

    您似乎不知道
    React
    上下文中的
    状态是什么。我建议您在
    React
    中阅读更多关于开发模式的内容。您似乎不知道
    React
    上下文中的
    状态是什么。我建议您在
    React
    中阅读更多关于开发模式的内容。