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

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

脚本自动修改,待续。

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐