创建Class组件

  1. import React from 'react';
  2. class A extends React.component{
  3. constructor(props){
  4. super(props);
  5. }
  6. render(){
  7. return (
  8. <div>hi</div>
  9. )
  10. }
  11. }
  12. export {A};

Props的作用

接受外部数据

  • 只能读不能写
  • 外部数据由父组件传递

    接受外部函数

  • 在恰当的时机,调用该函数

  • 该函数一般是父组件的函数

    state和setState

    在上篇博客中已有,不在重复

    生命周期(Lifecycle)

    constructor() ——在这里初始化state,props,但此时不能调用setState
    shouldComponentUpdate() ——判断组件是否更新,return false阻止更新true不阻止更新,React内置了React.PureComponent功能与其相同
    render()——创建虚拟DOM,展示视图,只能有一个根元素。有多个根元素时,需要使用占位代替div,可简写为<></>
    componentDidMount()——组件已出现在页面:在元素插入页面后执行代码(依赖DOM),可以发起加载AJAX的请求,首次渲染会执行此钩子
    componentDidUpdate()——组件已更新,首次渲染不会触发。在视图更新后执行代码,此处也可以发起AJAX请求用于更新数据
    compoentWillUnmount()——组件将消失,组件将要被移出页面并销毁时执行代码,unmount过的组件不会再mount