React:未捕获类型错误:this.setState不是函数

时间:2017-06-23 18:11:21

标签: javascript reactjs ecmascript-6 setstate

我是React的新手,并编写了我的第一个Web应用程序。我正在尝试编写一个查找医生列表的搜索方法。我得到一个“未捕获的类型错误:this.setState不是函数”。我试图在函数结束时添加.bind,仍然出错。我不知道该怎么办。 代码如下:

       this.searchBox.addEventListener('keyup', function(text){    
       this.state = {
            doctors: ["Dr Smith", "Dr Jones", "Dr Mary"],
            //list of matched doctors
            matchedDoctors: []
        }
        document.getElementById("demo").innerHTML = "hello world"; 
        var list = [];
        //console.log(this.state.doctors);
        for(var i = 0; i<this.state.doctors.length; i++){
            if(this.state.doctors[i].toLowerCase().includes(text.toString().toLowerCase())){
                list.push(
                    this.state.doctors[i]
                )
            }
        }
        this.setState({matchedDoctors:list});
  }
  );

0 个答案:

没有答案