开发者问题收集

TypeError:undefined 不是一个对象(评估“this”)

2021-02-15
1336

当我从放置它的地方删除我专门创建的组件菜单时,我没有收到错误,但当我的组件在那里时,我收到错误。感谢您的评论。



import Menu from './Navigator'
import { FontAwesomeIcon } from '@fortawesome/react-native-fontawesome';
import { faBars } from '@fortawesome/free-solid-svg-icons';

export default class HeaderLeft extends Component {
    constructor(props){
        super(props);
        this.state={check:false}
    }
    render() {
        return (<SafeAreaView><View onStartShouldSetResponderCapture={() => { this.setState({ check: !this.state.check }) }} style={styles.align}>
            <FontAwesomeIcon icon={faBars} size={16} color={"#2D6A4F"} /><Menu check={this.state.check}></Menu></View></SafeAreaView>)
    }

}
const styles = StyleSheet.create({

    align: {
        height: 60, display: 'flex', justifyContent: 'center', padding: 20
    },

});```
1个回答

尝试在您的代码中进行如下更改:

在构造函数中添加以下内容:

this.handleResponderCapture = this.handleResponderCapture.bind(this)

添加以下方法:

handleResponderCapture = () => {
    this.setState({
        check: !this.state.check
    })
}

在 View 中进行如下更改

<View
    onStartShouldSetResponderCapture={this.handleResponderCapture}
    style={styles.align}
>
Jignesh Mayani
2021-02-15