不推荐使用ReactNative.createClass使用来自" React"的React.createClass。包而不是

时间:2016-05-05 14:07:53

标签: reactjs react-native

任何人都知道为什么这个警告正在向上发展?

另一个警告是:不推荐使用ReactNative.createElement。使用来自"反应"的React.createElement。包而不是。

代码是:

var React = require('react-native');

var {
Text,
View,
StyleSheet,
} = React;

module.exports = React.createClass({
render: function(){
return(
  <View>
    <Text>{this.props.titleName}</Text>
  </View>
);
}
});

var styles = StyleSheet.create({
container:{

},
text:{

}
});

1 个答案:

答案 0 :(得分:18)

从react-native导入React已deprecated in 0.25.1。它将在0.26停止工作。

你现在应该这样做:

import React from 'react';

import {
    Text,
    View,
    StyleSheet,
} from 'react-native';

编辑:如果在修复代码后仍然收到弃用警告,则可能正在使用尚未更新的依赖项。要修复这些警告,请执行以下操作:

  1. 检查是否有可用于修复导入的更新。
  2. 使用this script重写依赖项以自动使用正确的导入。这将花费相当长的时间并重写一些与反应无关的文件。 jscodeshift -t transform.js PATH_TO_YOUR_PROJECT/node_modules/
  3. 要从react-native查找需要React的其余文件,您可以在第41行的node_modules / react-native / Libraries / ReactNative / ReactNative.js中设置断点,这是触发警告的地方。
  4. 当您发现尚未更新的依赖项时,提交问题或者您有时间PR可能是个好主意。