创建一个Component
一个组件类可以像前面Hello World工程中那样通过 class HelloWorldAppp extends Component 来创建,或者通过React.createClass来创建,并且提供一个render方法以及其他可选的生命周期函数、组件相关的事件或方法定义。
因此,HelloWorldAppp和下面的实现方法是等价的:
var HelloWorldAppp = React.createClass({
render() {
return (
<View
</View>
);
},
});
通过继承Component实现的组件中如果实现getDefaultProps getInitialState等方法时,会有下面警告:
Warning: getDefaultProps was defined on HelloWorldAppp, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.
React组件生命周期
先来看一段代码:
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
Image,
TouchableHighlight
} from 'react-native';
var clickTime = 0;
var HelloWorldAppp = React.createClass({
getDefaultProps(){
console.log("getDefaultProps")
return {
title:"HelloWorld"}
},
getInitialState(){
console.log("getInitialState")
return {
content:"点击屏幕任意位置"}
},
componentWillMount(){
console.log(