React-native:Undefined is not an object

Undefined is not an object(evaulating PropTypes.arrayOf)
Undefined is not an object(evaulating PropTypes.func)
undefined is not an object evaluating ReactInternals.ReactCurrentOwner

undefined is not an object

针对这样的报错,如果排除拼写错误,则基本是ReactNative版本问题。

解决办法:升级或降级React-Native 版本

方法1:
查看react-native 历史版本信息
npm info react-native;

升级
npm install –save react-native@x.x.x(x.x.x版本号)

react-native –save react@x.x.x(x.x.x版本号)

方法2:
删除nodemodules目录;

修改package.json:

    "react": "^16.0.0",
    "react-native": "^0.50.4"

这里是升级到最新版本。

执行npm install命令。

对于 Undefined is not an object(evaulating PropTypes.arrayOf)
Undefined is not an object(evaulating PropTypes.func)
这样的报错,PropTypes未识别。是由于React 在15.5版本将PropTypes独立出来,作为一个单独的module。

这样的错误还需要安装PropTypes 包,并改变PropTypes的引入方式:

安装PropTypes

npm install --save prop-types

对PropTypes的引用方式进行修改

import  {PropTypes} from 'prop-types';//es6

var PropTypes=require('prop-types');//es5

以上两种方式,只需使用一种。

脚本自动修改,待续。

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页