父組件向子組件傳值(屬性)
通過屬性的方式向子組件傳值:<TodoItem value={ 值 } />,子組件通過this.props.值名稱接收使用
子組件向父組件傳值(調(diào)用父組件的方法)
父組件把自身的方法通過屬性傳遞給子組件(需要在父組件中先把這個方法的this強制定為父組件画畅,子組件調(diào)用時症脂,才能改變父組件),子組件接收后通過調(diào)用父組件的方法兴蒸,來實現(xiàn)子組件和父組件的通信
props 父組件通過屬性傳值給子組件時钓觉,子組件通過props接收
state 指組件中的數(shù)據(jù)
render 函數(shù):用來渲染組件中的內(nèi)容。
三者關系:
render? 函數(shù)什么時候執(zhí)行批幌?
1. 組件第一次渲染的時候,會被默認執(zhí)行一次拦宣。
2. 當state數(shù)據(jù)發(fā)生變更的時候截粗,render函數(shù)就會被重新執(zhí)行一次。
3. 當props數(shù)據(jù)發(fā)生變化的時候,render函數(shù)就會被重新執(zhí)行一次豆瘫。?
React中操作DOM,通過ref屬性實現(xiàn)
ref的值一般是一個函數(shù),會自動獲取DOM節(jié)點,然后傳到函數(shù)內(nèi)部?并聲明一個組件變量存放
ref寫在html標簽上,獲得的是dom節(jié)點;
ref寫在組件標簽上,獲取的是組件的js實例腰湾;
(1)ref的值可以是一個箭頭函數(shù)疆股,也可以是普通函數(shù)形式费坊,但是需要提前保存this,否則this指向不對两残,我們需要的this指向當前類羡忘。例如http://img.mukewang.com/climg/5ed3245509555dce05870262.jpg
(2)函數(shù)的參數(shù)是自定義的
(3)函數(shù)的參數(shù)與標簽名、組件名基本一致磕昼,保持一致是一種習慣問題,便于區(qū)分綁定在哪個內(nèi)容上了节猿。