React學(xué)習(xí)(3)-JSX介紹

直接寫在js代碼里的html,就是jsx。不需要引號(hào)引起來。以<開頭, >結(jié)尾。

JSX產(chǎn)生react的元素,元素最后用到DOM里面去渲染,產(chǎn)生ui。

JSX里面可以嵌入js的變量,常量,函數(shù),甚至表達(dá)式,都是用 {}包含起來。

function str_cat (str1, str2) {
    return str1 + " " + str2;
}

let title = <h1>Hello {str_cat("He", "fish")}</h1>;

ReactDOM.render(
    title,
    document.getElementById("root")
);

JSX同樣也是一個(gè)表達(dá)式,可以用來賦值給一個(gè)變量。也可以用于函數(shù)返回。

Babel會(huì)把JSX編譯成 React.createElement()的調(diào)用:
下面兩種寫法是一樣的:

let subject = (
    <h1 className='greeting'>
        Hello world.
    </h1>
    );

let subject = React.createElement(
    'h1',
    {
        className: 'greeting'
    },
    'Hello , world.'
);

還可以這么寫(對(duì)象的方式):

const element = {
  type: 'h1',
  props: {
    className: 'greeting',
    children: 'Hello, world'
  }
}

上面的這樣的對(duì)象被稱為React元素。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容