简体   繁体   中英

undefined is not an object (evaluating '_reactNative.PropTypes.string') Error

I got this error when i am implementing third party library as https://github.com/ayoubdev/react-native-android-kit what this error indicates?

 'use strict';

import React, {Component} from 'react';
import{
 Platform,
 StyleSheet,
 Text,
 View,
 Image,
 Navigator,
 ToolbarAndroid,
 ScrollView
}from 'react-native';

import EventList from './javra-event-list';
  import AndroidToolBar from './javra-android-toolbar';
 import JResource from '../../javra-resource';
 import ScrollableTabView, {DefaultTabBar,ScrollableTabBar} from 'react-native-scrollable-tab-view';
  import CustomTab1 from './javra-custom-tabbar';


 import {TabLayoutAndroid, TabAndroid} from "react-native-android-kit";

 export default class Home extends Component{

  constructor(props){
  super(props);
  this.eventThumnailHandler = this.eventThumnailHandler.bind(this);
  this.movies = [{id:1,title:'Event 2016'},{id:2,title:'Event 2015'},{id:3,title:'Event 2014'},{id:4,title:'Event 2013'},
                {id:5,title:'Event 2016'},{id:6,title:'Event 2015'},{id:7,title:'Event 2014'},{id:8,title:'Event 2013'}
              ];

 }

 static childContextTypes = {
   eventThumnailHandler: React.PropTypes.func.isRequired,

 };

 getChildContext() {
   return {
     eventThumnailHandler: (item) => (this.eventThumnailHandler(item)),

   };
   }

 static contextTypes = {
    openDrawer: React.PropTypes.func.isRequired,
  };

  _openDrawer(){
    this.context.openDrawer();
  }


  eventThumnailHandler(item: Object){
    console.log('*/*/*/*///*/*/: ' + item.title);
    this.props.navigator.push(
      {id: 'NewView' , index:1}
    )
  }

render(){
 var toolbarActions = [{title:'Next',show:'always'}];
 return(
  <View style={{flex:1}}>

                <TabLayoutAndroid style={{height:60}} backgroundColor='#009688' indicatorTabColor='#ffc400'
                                  indicatorTabHeight={2} scrollable={false} center={false}>

                    <TabAndroid text='Tab1' textSize={16} textColor="white" selectedTextColor='#ffc400'
                                icon='ic_home_black_24dp' iconPosition='left'>

                        <Text>I'm the first Tab content!</Text>

                    </TabAndroid>

                    <TabAndroid text='Tab2' textSize={16} textColor='white' selectedTextColor='#ffc400'
                                icon='ic_important_devices_black_24dp' iconPosition='left'>

                        <Text>I'm the second Tab content!</Text>

                    </TabAndroid>

                </TabLayoutAndroid>

            </View>
);
}
}

i have implemented tablayout as provided by the link above mentioned. what could be the error in my file.please suggest me.

import React, { Component, PropTypes } from 'react';
import {
  StyleSheet,
  Text,
  TouchableOpacity,
  View
} from 'react-native';

Including PropTypes next to component helped me

like this : import PropTypes from 'prop-types';

注:reactVersion:0.51

try running

npm outdated

and update the third-party modules that are not at the current version.

I had to do the same after upgrading React Native and uninstall and re-install some modules.

node-modules->react-native-prompt->propmt.js

old : import React, { Component,PropTypes } from 'react';

new:------

import PropTypes from "prop-types" import React, { Component, } from 'react';

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM