手动调用React.PropTypes验证React native" ^ 0.30.0"

时间:2016-08-01 03:14:47

标签: react-native

我已升级到最新版本的React / RN:     "反应":" ^ 15.2.1",     " react-native":" ^ 0.30.0",

我开始收到很多关于样式表的警告。我实际上没有对样式表使用React.PropTypes验证,那么为什么要抛出这些警告?

const styles = StyleSheet.create({
    welcome: {
        fontSize: 20,
        textAlign: "center",
        margin: 10,
    },
  

ExceptionsManager.js:76警告:您正在手动呼叫   React.PropTypes fontSize道具的验证函数   StyleSheet welcome。这已被弃用,并且在下一个版本中不起作用   主要版本。由于第三方,您可能会看到此警告   PropTypes库。见https://facebook.github.io/react/warnings/dont-call-proptypes.html   for details.reactConsoleError @

     

ExceptionsManager.js:76警告:您正在手动呼叫   React.PropTypes textAlign道具的验证函数   StyleSheet welcome。这已被弃用,并且在下一个版本中不起作用   主要版本。由于第三方,您可能会看到此警告   PropTypes库。见https://facebook.github.io/react/warnings/dont-call-proptypes.html

     

ExceptionsManager.js:76警告:您正在手动呼叫   React.PropTypes margin道具的验证函数   StyleSheet welcome。这已被弃用,并且在下一个版本中不起作用   主要版本。由于第三方,您可能会看到此警告   PropTypes库。见https://facebook.github.io/react/warnings/dont-call-proptypes.html   详情。

3 个答案:

答案 0 :(得分:23)

React native 0.30依赖于反应15.2.0而非15.2.1。所以你应该rm -rf node_modules/react,从 package.json 中移除反应版本,然后移除npm install --save react@15.2.0。这应该可以解决问题。

答案 1 :(得分:7)

我通过更改版本(从node_modules中删除并安装包)解决了这个问题。

npm --save remove react react-native
npm --save install react@15.2.1 react-native@0.31.0

我没有重新部署本机代码。我在使用时看到了以前的问题:

"react": "^15.3.0",
"react-native": "^0.31.0"

答案 2 :(得分:1)

是的,这只是反应版本的一个错误。如果更新到15.3.0版,则所有警告都将消失。参考:https://github.com/callemall/material-ui/issues/4854