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

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

脚本自动修改,待续。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值