TypeError:undefined 不是 React-Native 中的对象
2020-06-28
1036
我对 Javascript 和 ReactJS 还很陌生,对错误
TypeError: undefined is not an object (evaluating '_this.state = { destination: '' }')
感到困惑。
这是我的代码:
import React, {Component} from 'react';
import { StyleSheet, View, TextInput } from 'react-native';
export default class SearchBar extends Component {
constructor() {
/*
this.state = {
destination: ''
};
*/
super();
}
render() {
return (
<View style={styles.inputContainer}>
<TextInput
style={styles.input}
/>
</View>
);
}
}
此代码运行正常。但是,只要我取消注释
this.state = {
destination: ''
};
我就会收到错误。为什么
undefined
会困扰我?我没有在任何地方访问它。
这可能看起来像
此处
问题的重复,但不同之处在于,在那个问题中,解决方案涉及在提问者定义的函数上使用
.bind(this)
。我没有可以调用它的函数。
任何帮助都将不胜感激。
1个回答
this
由
super
配置。在执行
super
之前,
this
尚未配置。这就是您遇到的问题的原因。修复:
constructor(props) {
super(props);
this.state = {
destination: ''
};
}
Lajos Arpad
2020-06-28