最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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)遵守國家法律
龙海市| 同江市| 淳安县| 巩义市| 屏山县| 合江县| 昭觉县| 双流县| 锡林郭勒盟| 双柏县| 黔西县| 崇阳县| 固镇县| 闻喜县| 乐都县| 涪陵区| 南陵县| 仪陇县| 泸溪县| 如东县| 湟中县| 巴林左旗| 元朗区| 东兴市| 北票市| 景洪市| 长葛市| 南皮县| 广东省| 六盘水市| 滨州市| 青龙| 民县| 攀枝花市| 安溪县| 安义县| 洛扎县| 徐汇区| 万盛区| 饶平县| 中卫市|