javascript - react-native在chrome調(diào)試工具中出現(xiàn)警告,并且不能使用react dev-tools
問(wèn)題描述
1.我使用[email protected], [email protected] ,在模擬是可以正常使用的,但是在chrome調(diào)試工具中出現(xiàn)了警告:
ExceptionsManager.js:71 Warning: PropTypes has been moved to a separate package. Accessing React.PropTypes is no longer supported and will be removed completely in React 16. Use the prop-types package on npm instead. (https://fb.me/migrating-from-react-proptypes)
ExceptionsManager.js:71 Warning: React.createClass is no longer supported. Use a plain JavaScript class instead. If you’re not yet ready to migrate, create-react-class is available on npm as a drop-in replacement. (https://fb.me/migrating-from-react-create-class)
并且不能使用react dev-tools 進(jìn)行調(diào)試
我的代碼:
/** * Sample React Native App * https://github.com/facebook/react-native * @flow */import React, { Component } from ’react’import { AppRegistry, View, Text, StyleSheet} from ’react-native’export default class second extends Component{ render () { return ( <View style={{ flex: 1,flexDirection: ’column’,justifyContent: ’center’,alignItems: ’center’,backgroundColor: ’ghostwhite’ }}><Text style={{fontSize: 28, color: ’cadetblue’}}>class extends</Text> </View> ) } componentDidMount () { console.log(’==========’) this.testConsolelog() } testConsolelog () { console.log(’e3423423432’) }}const styles2 = StyleSheet.create({ bigblue: { color: ’blue’, fontWeight: ’bold’, fontSize: 30, }, red: { color: ’red’, },});AppRegistry.registerComponent(’second’, () => second);
問(wèn)題解答
回答1:你用的react16中,已經(jīng)棄用了React.createClass這個(gè)方法。
因此react16的版本就無(wú)法通過(guò)該方法來(lái)創(chuàng)建組件了。你必須使用ES6的方式來(lái)創(chuàng)建組件了。
class Test extends React.Component { ...}
如果你的代碼中用了mixins而必須使用createClass的話,你需要單獨(dú)引入另外一個(gè)工具庫(kù)。
var createReactClass = require(’create-react-class’);
另外,React.propTypes也不能使用了,你想要檢測(cè)props,react16中需要引入一個(gè)單獨(dú)的工具。
import PropTypes from ’prop-types’;回答2:
不能使用react dev-tools, 是不是沒(méi)有勾選允許訪問(wèn)文件地址
