讲讲React中的State和Props

本文详细介绍了React中组件的props和state的基本概念。props作为组件的输入参数,是只读的,用于接收外部数据;而state则是组件内部可变的状态,通过this.setState()可更新并触发重新渲染。两者都能驱动组件更新,但管理方式和作用范围有所不同。
摘要由CSDN通过智能技术生成

基本概念

  • 在React中,组件的数据存储在props和state中。
  • 一个组件的显示形态可以由数据状态和外部参数所决定。

外部参数——props

  • 组件从概念上可以理解为一个函数,因为函数也是封装一个独立可复用的功能,而props就可以理解为函数接收的参数。
  • props为从外部传入组件内部的数据。
  • 特性
    • 只读性
    • 不变性
    • 在子组件中,props在内部不可变的,如果想要改变它,只能通过外部组件传入新的props来重新渲染子组件,否则子组件的props和展示形式不会改变

数据状态——state

  • 在组件初始化时,会根据constructor()中this.state定义的状态值来初始化组件。
  • 不用与props的只读性,可以通过this.setState()来变更state的值,触发重新渲染。
  • state的主要作用是用于组件保存、控制以及修改自己的状态,它只能在constructor中初始化,它可以理解为组件的私有属性,不可通过外部访问和修改,只能通过组件内部的this.setState来修改,修改state属性会导致组件的重新渲染。

props和state的相同点及区别

  • 相同点
    • props 和 state 都能触发渲染更新
  • 区别
    • props 是外部传递给组件的,而 state 是在组件内被组件自己管理的,一般在 constructor 中初始化
    • props 在组件内部是不可修改的,但 state 在组件内部可以进行修改
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值