鍍金池/ 問答/HTML/ React 中的組件如何檢測(cè)到 state 的改變?

React 中的組件如何檢測(cè)到 state 的改變?

如題,有關(guān) React 組件的原理實(shí)現(xiàn)。

  1. React 組件 state 發(fā)生變化時(shí),組件進(jìn)行更新、渲染。然而,組件又是在何時(shí)、通過何種方式獲知 state 的改變?
  2. state 類型不同(例如 stringobjectarray)時(shí),又會(huì)有怎么樣的表現(xiàn)?

注:不是在問 react 組件渲染的原理,側(cè)重點(diǎn)在 獲知并開始渲染

回答
編輯回答
玩控

1.state更新的時(shí)候是調(diào)用的setState方法啊,調(diào)用了setstate方法說明state更新了。那這個(gè)是肯定要獲取更新后的state,然后走更新的生命周期函數(shù)。不像vue一樣,是用defineProperty定義了屬性,一開始就收集好了依賴,那么你設(shè)置屬性的時(shí)候就會(huì)觸發(fā)更新

2017年8月4日 22:24
編輯回答
凝雅

這個(gè)問題沒看懂?
你問題組件如何渲染,卻側(cè)重點(diǎn)獲知并開始渲然。問題描述中,你又知道,當(dāng)state變化時(shí),組件會(huì)render
好矛盾。

建議你,先寫代碼吧,能實(shí)現(xiàn)一些功能后,再嘗試?yán)斫膺@些概念性的東西。

2017年10月19日 19:02