react学习笔记二--面向组件编程一(组件的概念、使用及三大属性)

这篇博客详细介绍了React的组件化编程思想,包括React元素的特性、组件的定义和使用、组件的三大属性——state、props和refs,以及事件处理机制。通过实例解析了如何创建和使用组件,强调了组件命名规范、虚拟DOM操作以及状态管理和数据传递的重要性。
摘要由CSDN通过智能技术生成

面向组件编程

react元素

React 元素是不可变对象。一旦被创建,你就无法更改它的子元素或者属性。
一个元素就像电影的单帧:它代表了某个特定时刻的 UI。
更新 UI 唯一的方式是创建一个全新的元素,并将其传入 ReactDOM.render()

data-reactroot 表明当前元素是 该组件的顶层标签

react组件概念理解

组件,从概念上类似于 JavaScript 函数。它接受任意的入参(即 “props”),并返回用于描述页面展示内容的 React 元素。

  • 自定义的标签: 组件类(函数)/标签
  • 组件名称必须以大写字母开头。
  • React 会将以小写字母开头的组件视为原生 DOM 标签

组件定义方式:

1.定义组件最简单的方式就是编写 JavaScript 函数:
(简单组件)

function Welcome(props) {
   
  return <h1>Hello, {
   props.name}</h1>;
}

该函数是一个有效的 React 组件,因为它接收唯一带有数据的 “props”(代表属性)对象与并返回一个 React 元素。
这类组件被称为“函数组件”,因为它本质上就是 JavaScript 函数。

2.还可以使用 ES6 的 class 来定义组件:
(复杂组件)

class Welcome extends React.Component {
   
  render() {
   
    return <h1>Hello, {
   this.props.name}</h1>;
  }
}

这两个组件在 React 里是等效的

渲染组件:

ReactDOM.render(<MyComponent />, document.getElementById('example1'))

function Welcome(props) {
   
  return <h1>Hello, {
   props.name}</h1>;
}

const element = <Welcome name="Sara" />;
ReactDOM.render(
  element,
  document.getElementById('root')
);

注意

  1. 组件名必须首字母大写
  2. 虚拟 DOM 元素只能有一个根元素
  3. 虚拟 DOM 元素必须有结束标签

render()渲染组件标签的基本流程

  1. React 内部会创建组件实例对象
  2. 得到包含的虚拟 DOM 并解析为真实 DOM
  3. 插入到指定的页面元素内部

组件三大属性 1: state

  1. 组件被称为"状态机", 页面的显示是根据组件的state属性的数据来显示
  2. 初始化指定:
 constructor() {
   
      super()
      this.state = {
   
        stateName1 : stateValue1,
        stateName2 : stateValue2
      }
    }
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值