const switchInputs = (state) => {
console.log(state.switchInput) // disabled
this.setState(() => {
return {
switchInput: 'enabled'
}
});
}
给出一个错误:
TypeError:无法读取未定义的属性“setState”
函数在另一个文件中,状态数据到达函数
const switchInputs = (state) => {
console.log(state.switchInput) // disabled
this.setState(() => {
return {
switchInput: 'enabled'
}
});
}
给出一个错误:
TypeError:无法读取未定义的属性“setState”
函数在另一个文件中,状态数据到达函数
将值
this从组件传递给函数,this那里有另一个变量,因此出现错误。毕竟this每个函数调用都有不同的值,而值也this取决于函数的调用方式。好吧,调用,传入
this组件的第一个参数。以前,您使用一个参数调用函数,但现在您需要使用两个参数调用它。有用的学习链接:this一般不建议这样做,最好在组件本身改变状态,在里面写函数,以免产生副作用。
偏离组件外传递
this和调用的话题setState,我想说明几点。props;获得它们的新状态因此,通过在开发 React 应用程序时结合简单和复杂的方法,您可以获得干净、易于理解且不繁琐的代码。我在描述中附上了链接,但我会单独拿出来:
UPD:起初,一切似乎都很复杂,但在你设法将Redux融入应用程序并编写一些 action 和 reducer 之后,它会变得更加容易和简单。建议在项目开发的早期就开始使用 Redux。在一个大型项目中,没有使用 Redux 的经验,很难将 Redux 收紧,这会带来很大的变化,需要很多时间。