React - 类组件创建

2019-07-29  本文已影响0人  辻子路

React创建组件有两种方式

class HelloClass extends React.Component {
    // render函数的作用,渲染当前组件对应的虚拟dom元素
    // 在class关键字创建的组件中,如果想用外界传过来的props参数,不需接收,直接通过this.props.xxx访问
    render() {
        return <div>这是class创建的组件 --{this.props.name} --{this.props.age}</div>
    }
}
const user = {
    name: '沙赞',
    age: 14
}

ReactDOM.render(<HelloClass {...user} />, document.getElementById('app'))

函数式组件和类组件区别

class HelloClass extends React.Component {

    // 构造器
    constructor() {
        // 由于继承了React.Component这个父类,所以自定义构造器中,必须调用super()
        super()
        // 只有调用了super()以后,才能使用this关键字
        this.state = {
            msg: '大家好,我是class创建的组件'
        }
    }

    // render函数的作用,渲染当前组件对应的虚拟dom元素
    // 在class关键字创建的组件中,如果想用外界传过来的props参数,不需接收,直接通过this.props.xxx访问
    render() {
        // 在class创建的组件中,this.state上的数据,都是可读可写的
        // this.state.msg = '你好'
        return <div>这是class创建的组件 --{this.props.name} --{this.props.age} --{this.state.msg}</div>
    }
}

有状态组件和无状态组件

有状态组件和无状态组件之间的本质区别就是: 有无state属性和有无生命周期函数;

组件中的props和state之间的区别

上一篇下一篇

猜你喜欢

热点阅读