【问题标题】:React Native, Android, undefined is not an object (evaluating 'this.props.navigator.push')React Native,Android,未定义不是对象(评估'this.props.navigator.push')
【发布时间】:2015-12-08 09:42:12
【问题描述】:

我正在尝试在提交buttonclick 时从登录屏幕导航到主屏幕... 以下是我的导航功能

  onsubmitButtonPress(event)
{
  if(User != null && password != null){
    if(User != '' && password != ''){
    if (User == password){
      ToastAndroid.show('Login Successful', ToastAndroid.SHORT);
      this.props.navigator.push({
              title: 'Home',
              component: HomeScreen,
            });
    }else{
      ToastAndroid.show('Login Failed', ToastAndroid.SHORT);
    }
  }else{
    ToastAndroid.show('Fill details', ToastAndroid.SHORT);
  }
  }else{
    ToastAndroid.show('Fill details', ToastAndroid.SHORT);
  }
}

但是我遇到了这个错误。谁能帮帮我..

【问题讨论】:

    标签: android react-native


    【解决方案1】:

    问题可能出在您如何称呼onsubmitButtonPress。从这里更改您在组件上的设置位置:

    someProp={this.onsubmitButtonPress}

    到这里:

    someProp={(e) => this.onsubmitButtonPress(e)}

    问题是this 没有定义。

    如果不是这样,那么您可能从未定义过this.props.navigator。在您的函数中放置一个断点(或 console.log)以记录 this.props 的值并检查它是否存在,如果存在,是否在其上定义了 this.props.navigator

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-16
      • 2019-09-29
      相关资源
      最近更新 更多