国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

千鋒教育Kerwin系列前端教程1000集(適合前端0基礎(chǔ),h5(html5)/

2023-07-15 14:09 作者:bili_43989748628  | 我要投稿

1. 極簡(jiǎn)Hooks實(shí)現(xiàn)

function App() {
  const [num, updateNum] = useState(0);

  return <p onClick={() => updateNum(num => num + 1)}>{num}</p>;
}
  1. 通過一些途徑產(chǎn)生更新,更新會(huì)造成組件render--updateNum;組件render時(shí)useState返回的num為更新后的結(jié)果;

其中步驟1的更新可以分為mount和update:

調(diào)用ReactDOM.render會(huì)產(chǎn)生mount的更新,更新內(nèi)容為useState的initialValue(即0)。點(diǎn)擊p標(biāo)簽觸發(fā)updateNum會(huì)產(chǎn)生一次update的更新,更新內(nèi)容為num => num + 1。

demo:

當(dāng)產(chǎn)生第一個(gè)update(我們叫他u0),此時(shí)queue.pending === null。

update.next = update;即u0.next = u0,他會(huì)和自己首尾相連形成單向環(huán)狀鏈表。

然后queue.pending = update;即queue.pending = u0

當(dāng)產(chǎn)生第二個(gè)update(我們叫他u1),update.next = queue.pending.next;,此時(shí)queue.pending.next === u0, 即u1.next = u0。

queue.pending.next = update;,即u0.next = u1。

然后queue.pending = update;即queue.pending = u1

千鋒教育Kerwin系列前端教程1000集(適合前端0基礎(chǔ),h5(html5)/的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
石景山区| 南丹县| 星座| 汉沽区| 乌什县| 吉木萨尔县| 辽宁省| 喀喇| 永德县| 陆河县| 潜山县| 四子王旗| 武功县| 泌阳县| 晋州市| 垫江县| 岳西县| 横山县| 龙口市| 西乡县| 瑞安市| 大理市| 蒙阴县| 保靖县| 博客| 堆龙德庆县| 新绛县| 建湖县| 宕昌县| 盐池县| 民权县| 东丰县| 博客| 石河子市| 图片| 屏东县| 长宁县| 双鸭山市| 台州市| 长阳| 东阿县|