Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将函数从另一个文件绑定到react类组件_Javascript_Reactjs_Bind - Fatal编程技术网

Javascript 将函数从另一个文件绑定到react类组件

Javascript 将函数从另一个文件绑定到react类组件,javascript,reactjs,bind,Javascript,Reactjs,Bind,我已经在一个组件中编写了一个函数,它工作正常。但是,如果我将其移动到另一个文件,导入它,并在构造函数中将其绑定到该文件,它将无法识别该类 应该改变什么?代码如下: 主要组成部分: 从“../functions”导入{getSaturdays,getThisAndNextYear,getMonthsOfYear,handleChange}; 导出类BookingField扩展组件{ 建造师(道具){ 超级(道具); this.handleChange=handleChange.bind(this)

我已经在一个组件中编写了一个函数,它工作正常。但是,如果我将其移动到另一个文件,导入它,并在构造函数中将其绑定到该文件,它将无法识别该类

应该改变什么?代码如下:

主要组成部分:

从“../functions”导入{getSaturdays,getThisAndNextYear,getMonthsOfYear,handleChange};
导出类BookingField扩展组件{
建造师(道具){
超级(道具);
this.handleChange=handleChange.bind(this);
}
render(){
返回(
埃尔凯泽斯
{ 这个.handleChange(数据); }} /> { 这个.handleChange(数据); 设置超时(()=>{ 这是我的国家({ 选项:{ …此.state.options, 抵港人数:{ …此.state.options.arrivals, days:getSaturdays(this.state.arrival.year,this.state.arrival.month) } } }) }, 1) }} /> 此.handleChange(数据) } options={this.state.options.arrivals.days} /> 塔沃斯
{ 这个.handleChange(数据); }} /> { 这个.handleChange(数据); 设置超时(()=>{ 这是我的国家({ 选项:{ …此.state.options, 出发时间:{ …此。状态。选项。离开, days:getSaturdays(this.state.deposition.year,this.state.deposition.month) } } }) }, 1) }} /> 此.handleChange(数据) } options={this.state.options.departions.days} /> 旺德盖克
); } } 导出默认记账字段;
functions.js

handleChange=(数据)=>{
开关(data.name){
案例“arrivalYear”:
返回此.setState({
…这个州,
抵达:{
…这个州,到达,
年份:data.value,
月份:未定义,
日期:未定义
},
出发时间:{
…这个州,离开,
年份:数据值
}
})
“到达月”案例:
返回此.setState({
…这个州,
抵达:{
…这个州,到达,
月份:data.value
}
})
“抵达日期”案例:
返回此.setState({
…这个州,
抵达:{
…这个州,到达,
日期:data.value
}
})
默认值:返回
}
}
。将其改为常规函数

函数句柄更改(数据){

因此函数文件不重要。组件重要。请解释“它不识别类”的含义。因此有一个functions.js文件,我将函数从functions.js导入组件。我说“this.handleChange=handleChange.bind(this);”在构造函数中。错误表示不能在未定义项上使用setstate,使其成为常规函数,而不是arrow
函数handleChange(data){
好的,完成了,这就是问题所在。但是现在我用普通函数创建了另一个函数,但它也不起作用……问题是什么?我怎么知道?错误是什么?函数是什么?