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

歡迎光臨散文網(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)遵守國家法律
罗甸县| 屏南县| 磐安县| 和林格尔县| 南溪县| 普兰县| 潜江市| 弥勒县| 崇信县| 泉州市| 临西县| 济源市| 宣恩县| 鞍山市| 西乌珠穆沁旗| 长子县| 建昌县| 小金县| 晋州市| 奎屯市| 海宁市| 正蓝旗| 阿巴嘎旗| 饶河县| 昆明市| 古浪县| 南昌县| 乌苏市| 福建省| 灵台县| 高陵县| 金华市| 武陟县| 江孜县| 伊金霍洛旗| 临泉县| 余庆县| 石狮市| 威远县| 金塔县| 蓬安县|