我不明白为什么州会回来undefined
我的代码就是这样:
class s extends React.Component {
constructor(props) {
super(props);
this.state = {
name:null,
uri:null,
fbid:null,
};
}
componentDidMount() {
setInterval(function(){..
if(this.state.fbid!=null){..
..),1000}
this.state.fbid =>未定义
答案 0 :(得分:1)
this
超出了函数的上下文,因为setInterval函数创建了自己的作用域。请尝试使用箭头功能。
componentDidMount() {
setInterval(() => {
if(self.state.fbid!=null){
// do something
};
}, 1000);
}
答案 1 :(得分:0)
我想,在反应中,自定义组件名称应以大写字母开头。
答案 2 :(得分:0)
定义函数将在此创建自己的范围。和this
限制功能范围。因为state
不在函数范围内,所以您无法访问它,因此未定义。尝试使用箭头功能:
componentDidMount() {
setInterval(() => {
//do anything
}, 1000)
}