React零碎知識點回顧

2022-03-09 11:50:46 字數 1712 閱讀 6781

1、jsx更接近於js而不是html,所以react dom使用駝峰屬性命名規則來取代原來的html屬性名。

2、jsx的本質是個函式物件。下面兩個例子是相似的:

const element = (

);

const element = react.createelement(

'h1',

, 'hello, world!'

);

3、將乙個react元素渲染到根節點裡,通過reactdom.render()。

4、區域性更新:react dom會將元素和子元素與之前的狀態比較,然後只更新必要的部分使dom變為所希望的狀態。

5、react元件的首寫字母必須大寫。舉個例子,代表乙個dom標籤,但是代表乙個乙個元件。

6、正確使用state:避免使用this.state.name=value的方式來更新state,這樣並不會重新渲染dom。採用this.setstate方式。

7、呼叫this.setstate後state的值可能不會立即改變。更安全的做法是使用函式做為setstate的引數。

this.setstate((prevstate, props) => ());

8、元件的render方法返回null不會影響元件的生命週期方法的執行。比如,componentwillupdate和componentdidupdate將一直被呼叫。

9、關列列表:key幫助react鑑別哪一項發生了改變,新增了,或者移除了。key應該新增在陣列裡的元素身上作為乙個穩定的特性。

10、html表單(form)和 react託管的表單略有不同。兩種獲取值的方式也不同:

//通過state管理value

//通過refs管理value

} />

11、proptypes已經被新版本react移除了,請獨立安裝並使用'prop-types'庫。

12、正確使用ref屬性。字串refs已經不推薦使用,請使用行間函式的方式指定ref。

13、在react渲染的生命週期中,表單元素中的value屬性會重寫dom中的元素。而使用非控制項,你經常想要讓react指定初始value值,但是讓之後的值來更新非控制項。

為了解決這個問題,你可以指定defaultvalue屬性替代value值:

//控制項:用react的state來控制表單元素的value值;

//非控制項:表單資料就被dom本身所處理

render()

14、不使用es6:

//使用es的寫法:

class greeting extends react.component ;

}

greeting.proptypes = ;

greeting.defaultprops = ;

render()  

}

//不使用es6的寫法:

var greeting = react.createclass(,
getinitialstate: function() ;

},

getdefaultprops: function() ;  

},

render: function()  

});

15、react並不推薦使用context,如果你沒有用的context,那麼恭喜你。

零碎知識點

1.反斜槓也可拼接字串 window.nl ad function window.nl ad function 2.在console.log 中新增樣式 var a hello console.log c a,font size 400 background blue color white 3 通...

零碎知識點

比較數值時,不要integer,要int 1,elasticsearch查詢時不識別大寫,應全部轉為小寫.因此建立索引時盡量使用小寫 2.var param param.yanan1 yanan2 此處的用法 param 宣告了json格式的param,param.yanan1 yanan2定義了j...

彙編零碎知識點

條件碼 of overflow flag 溢位標誌,溢位時為1,否則置0.標明乙個溢位了的計算,如 結構和目標不匹配.sf sign flag 符號標誌,結果為負時置1,否則置0.zf zero flag 零標誌,運算結果為0時置1,否則置0.cf carry flag 進製標誌,進製時置1,否則置...