一、JSX語(yǔ)法規(guī)則
- 定義虛擬DOM時(shí),不要寫(xiě)引號(hào)。
- 標(biāo)簽中混入JS表達(dá)式時(shí)要用{}。
- 樣式的類(lèi)名指定不要用class,要用className。
- 內(nèi)聯(lián)樣式,要用style={{key:value}}的形式去寫(xiě)。
- 只有一個(gè)根標(biāo)簽。
- 標(biāo)簽必須閉合。
- 標(biāo)簽首字母。
(1)若小寫(xiě)字母開(kāi)頭,則將該標(biāo)簽轉(zhuǎn)為html同名元素,若html中午該標(biāo)簽對(duì)應(yīng)的同名元素,則報(bào)錯(cuò)。
(2)若大寫(xiě)字母開(kāi)頭,react就去渲染對(duì)應(yīng)的組件,若組件沒(méi)有定義,則報(bào)錯(cuò)。
二、JS語(yǔ)句(代碼)與JS表達(dá)式的區(qū)別
1.表達(dá)式:一個(gè)表達(dá)式會(huì)產(chǎn)生一個(gè)值,可以放在任何一個(gè)需要值的地方,例如下面這些都是表達(dá)式:
(1)a
(2)a + b
(3)func(1)
(4)arr.map()
(5)function test() {}
2.語(yǔ)句(代碼):不產(chǎn)生值,是執(zhí)行一些命令或者步驟,例如下面這些都是語(yǔ)句:
(1)if() {}
(2)for() {}
(3)switch() {case:xxxx}