类组件
import React from 'react'; // 组件必须导入// 使用es6的class实现react的组件,组件的首字母大写// 要实现组件,必须继承React的Component// 必须调用super()方法 ---- 类的构造方法中调用 ----- 如果组件中使用this// 子类必须在constructor方法中调用super方法,否则新建实例时会报错// 这是因为子类自己的this对象,必须先通过父类的构造函数完成塑造,得到与父类同样的实例属性和方法,然后再对其进行加工,加上子类自己的实例属性和方法。如果不调用super方法,子类就得不到this对象。class Com extends React.Component {constructor (props) { // 父类可以调用的所有的属性和方法都在props值中super(props)}// render 函数 继承自父类,是react生命周期的一部分// 返回一段HTML代码,表示当前组件的结构(相当于vue中的template),HTML代码一般使用()包裹// 返回的HTML结构的代码的语法 ---- jsx语法 --- javascript xml - 类xml语言// 只有一个顶级标签render () {return (<div>hello world</div>)}}// 暴露组件export default Com;
函数组件
import React from 'react'; // 组件必须导入// 箭头函数返回一段HTML代码// const Com = () => {// 业务逻辑// return (// <div>// hello react函数式组件// </div>// )// }// 箭头函数的自带返回值,返回()表示直接返回HTML代码const Com = () => (<div>hello react函数式组件-简写</div>)// 暴露组件export default Com;
