React-组件渲染和更新的实现

本文探讨了React中组件的渲染和更新过程,包括文本、原生标签和自定义标签的处理。在渲染时,React通过map方法将组件分为三类并进行相应操作。在更新阶段,React使用diff算法和patch方法来处理文本、原生标签和自定义标签的变更,确保高效地更新DOM。此外,还强调了setState方法仅更改组件状态,不直接触发更新,而需要重新渲染。

最近一直写React,慢慢就对里面的一些实现很好奇。最好奇的就是自定义标签的实现和this.setState的实现。这里不分析JSX是如何解析的,所有组件都用ES5方式编写。

组件渲染

渲染时候,我们会调用render方法。类似下面这样:

var SayHi = React.createClass({
  getInitialState: function() {
   
   
    return {verb: 'say:'};
  },
  componentWillMount: function() {
   
   
    console.log('I will mount');
  },
  componentDidMount: function() {
   
   
    console.log('I have mounted');
  },
  render: 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值