成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

React

ningwang / 986人閱讀

摘要:而我只知道有自己的虛擬,它會(huì)對(duì)比虛擬和真實(shí)的差別,然后在適當(dāng)?shù)臅r(shí)機(jī)更新頁(yè)面。函數(shù)的第一個(gè)參數(shù)只能是一個(gè)標(biāo)簽,不能是并列的兩個(gè)標(biāo)簽。第一個(gè)添加了的屬性,該屬性值指向,意思是該組件名為的靜態(tài)屬性。

網(wǎng)頁(yè)總是一個(gè)鏈接著另一個(gè)的,React一大優(yōu)勢(shì)在于每次鏈接到另一個(gè)頁(yè)面上去的時(shí)候,不需要向傳統(tǒng)頁(yè)面一樣,得銷毀所有代碼,重新渲染新頁(yè)面的代碼,而只在一個(gè)頁(yè)面上展現(xiàn)新的內(nèi)容——單頁(yè)頁(yè)面。

React另一個(gè)優(yōu)勢(shì)是,以往的單頁(yè)頁(yè)面你需要考慮哪個(gè)元素要被刪除、哪個(gè)元素的行為要被修改,而我們只需要告訴React我們想要的最終頁(yè)面的效果,React會(huì)自動(dòng)幫我們處理頁(yè)面上的元素,做刪除、修改等操作。

而我只知道React有自己的虛擬DOM,它會(huì)對(duì)比虛擬DOM和真實(shí)DOM的差別,然后在適當(dāng)?shù)臅r(shí)機(jī)更新頁(yè)面。至于它怎么對(duì)比的?怎么知道差別的?怎么進(jìn)行修改的?我不知道,不過(guò),對(duì)于我們,誰(shuí)在乎呢?

必須首先知道的關(guān)于React的術(shù)語(yǔ)

JSX語(yǔ)法:React特有語(yǔ)法,用來(lái)搭建虛擬DOM

組件(Component):一個(gè)個(gè)代碼塊,用來(lái)封裝各種功能,可以類比于函數(shù)(function

props&status:組件的所有靜態(tài)屬性 & 所有動(dòng)態(tài)屬性

引入React

想要使用React,你需要先引入:


上面兩個(gè)

解釋:

首先引入了三個(gè)

我們看到,頁(yè)面中已經(jīng)添加了包含兩個(gè)

元素的

。React.render()函數(shù)的第一個(gè)參數(shù)只能是一個(gè)標(biāo)簽,不能是并列的兩個(gè)標(biāo)簽。不過(guò)一個(gè)標(biāo)簽里的子標(biāo)簽可以隨便的添加,所以最好的方法就是,在外面添加一個(gè)

使用組件(Component

上面的方法是直接將你想要的寫在React.render()里,通常的做法是引用組件

定義一個(gè)組件

class 組件名 extends React.Component(
    //your code
);

組件里可以添加很多功能,比如想要添加一個(gè)按鈕,你只需直接寫你想要的DOM結(jié)構(gòu),而不需要使用javascript語(yǔ)法:createElement()、appendChild()

class 組件名 extends React.Component(
    render(){
        return ();
    }
);

在組件里寫好你想要的東西,使用React.render()進(jìn)行渲染

React.render(
    <組件名/>,
    想要渲染的位置
)

完整代碼可以如下




    
    React First Try
    
    
    


    

效果、頁(yè)面結(jié)構(gòu)

我們看到,頁(yè)面上出現(xiàn)了我們想要的按鈕,頁(yè)面結(jié)構(gòu)里也成功添加了標(biāo)簽,它的type屬性值為submit,文字顯示為Batman

效果、頁(yè)面結(jié)構(gòu),哈哈哈,沒(méi)啥區(qū)別,沒(méi)區(qū)別就對(duì)了:

props的傳遞性

props只能從父元素向下傳遞給子元素:

當(dāng)有多個(gè)屬性你想傳遞的時(shí)候,你的代碼可能就會(huì)是這樣的,會(huì)重復(fù)很多遍{this.props.propsName}

如果你不想重復(fù)很多遍繁瑣的{this.props.propsName},那你可以使用擴(kuò)展運(yùn)算符...表示取到所有的靜態(tài)屬性并且都使等于{this.props.propsName},所以我們的代碼可以稍作簡(jiǎn)化:

                
閱讀需要支付1元查看
<