繁体   English   中英

React Native AdMob 错误:undefined 不是对象(评估“_reactNative.View.propTypes.style”)

[英]React Native AdMob Error: undefined is not an object (evaluating '_reactNative.View.propTypes.style')

我尝试使用 react-native-admob 包来显示广告,并按照此处的说明进行操作: https : //www.npmjs.com/package/react-native-admob

设置后,我收到一个错误:

在此处输入图片说明

第 1 步 在 node-modules/react-native-admob/RNAdmobBanner.js 和 RNPublisherBanner.js 的顶部添加以下行

从“prop-types”导入 PropTypes;

第 2 步 从两个文件中删除这些行(可能行号分别为 48 和 50)

风格:View.propTypes.style

注意: AdmobBanner 的 style 属性根本不起作用,因此您可以删除它,因为这会产生问题。

第 3 步 在两个文件中更改此单词

React.PropTypes ===> 到 ===> PropTypes

旧内容=>

bannerSize: React.PropTypes.string,
adUnitID: React.PropTypes.string,
testDeviceID: React.PropTypes.string,
adViewDidReceiveAd: React.PropTypes.func,
didFailToReceiveAdWithError: React.PropTypes.func,
adViewWillPresentScreen: React.PropTypes.func,
adViewWillDismissScreen: React.PropTypes.func,
adViewDidDismissScreen: React.PropTypes.func,
adViewWillLeaveApplication: React.PropTypes.func,
admobDispatchAppEvent: React.PropTypes.func,

新内容应该是这样=>

bannerSize: PropTypes.string,
adUnitID: PropTypes.string,
testDeviceID: PropTypes.string,
adViewDidReceiveAd: PropTypes.func,
didFailToReceiveAdWithError: PropTypes.func,
adViewWillPresentScreen: PropTypes.func,
adViewWillDismissScreen: PropTypes.func,
adViewDidDismissScreen: PropTypes.func,
adViewWillLeaveApplication: PropTypes.func,
admobDispatchAppEvent: PropTypes.func,

参考: https : //github.com/facebook/react-native/issues/16542#issuecomment-415751870

或者

react-native unlink react-native-admob

npm uninstall react-native-admob

npm install -save react-native-admob@next

文档: https : //github.com/sbugert/react-native-admob

参考: https : //github.com/sbugert/react-native-admob/issues/391#issuecomment-451253909

对于react-native-admob@next ,使用adSize属性而不是bannerSize

从 AdMobBanner 中删除样式道具,然后检查

安装此插件的测试版。 这个问题在这个版本中得到了解决。 package.json 看起来像这样。

"react-native-admob": "^2.0.0-beta.6",

或者运行这个命令

npm i react-native-admob@2.0.0-beta.6

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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