React入門

箭頭函數(shù)與普通函數(shù)區(qū)別

   箭頭函數(shù):()=>{}沒(méi)有自己的this,它使用的this是其外部環(huán)境的this
    普通函數(shù):function() {},有自己的this译柏,它的this是在運(yùn)行時(shí)指定的驶忌,可通過(guò)call,apply,bind去改變

 call和apply在傳參形式上不同
 bind與call和apply不同之處在返回值不同,bind是直接返回函數(shù)本身顽照,后面再加一個(gè)小括號(hào)才表示調(diào)用誊酌,而call和apply是直接執(zhí)行

React:
React 起源于 Facebook ,誕生說(shuō)2013,4
React主要用于構(gòu)建UI。你可以在React里傳遞多種類型的參數(shù),如聲明代碼侥猬,幫助你渲染出UI例驹、也可以是靜態(tài)的HTML DOM元素、也可以傳遞動(dòng)態(tài)變量退唠、甚至是可交互的應(yīng)用組件眠饮。
特點(diǎn):
1.聲明式設(shè)計(jì):React采用聲明范式,可以輕松描述應(yīng)用铜邮。
2.高效:React通過(guò)對(duì)DOM的模擬仪召,最大限度地減少與DOM的交互。
3.靈活:React可以與已知的庫(kù)或框架很好地配合松蒜。

React:核心文件
React-DOM:是將虛擬DOM最終構(gòu)建成真實(shí)DOM扔茅,并最終渲染到頁(yè)面上的技術(shù)

建議使用:vs code

一、安裝React
1.第一種安裝秸苗,用script引入方式(不推薦)
<script src="https://unpkg.com/react@16.4.2/umd/react.development.js"></script>
<script src="https://unpkg.com/react-dom@16.4.2/umd/react-dom.development.js"></script>
<script src="https://cdn.bootcss.com/babel-standalone/6.26.0/babel.min.js"></script>

<script>

function Header() {

    return <div>我是頭部</div>
}

//ReactDOM.render(要渲染的內(nèi)容,要渲染到哪里);

 ReactDOM.render(<Header />,document.getElementById('app'));

</script>

如果安裝npm慢召娜,換成淘寶鏡像
npm的鏡像替換成淘寶
1.得到原本的鏡像地址

npm get registry

https://registry.npmjs.org/

設(shè)成淘寶的

npm config set registry http://registry.npm.taobao.org/

2.用create-react-app腳手架搭建項(xiàng)目

 npm install create-react-app -g

 create-react-app  項(xiàng)目名

jsx 標(biāo)簽快速添加語(yǔ)法:
解決
這個(gè)其實(shí)vs code是支持的,只是默認(rèn)設(shè)置不支持惊楼,需要手動(dòng)設(shè)置一下玖瘸,設(shè)置步驟:

點(diǎn)擊左下角“設(shè)置”
搜emmet
設(shè)置如下屬性
"emmet.triggerExpansionOnTab": true

  1. 定義一個(gè)react組件:

1.函數(shù)組件

 function Header () {
     return <div>1603A</div>
}

ReactDOM.render(<Header />, document.getElementById('app'));

2.類組件:

import React,{Component} from 'react';

  class  類名  extends  React.Component
      {

    render() {

              return (<div></div>);

        }

    }

例如:

        class HeaderCom extends Component {

             render() {

                 return (

                    <div>頭部組件111</div>
                 );

             }

        }

注意:
       render方法中的return 根標(biāo)簽只能有一個(gè) 

4.為組件添加樣式

1.引入css樣式文件

  例如:     import './index.css'

2.js對(duì)象方式引入樣式

例如:

import Styles from './indexStyle'

<div className="ft" style={  Styles.ft }>底部footer組件</div>

合并對(duì)象: Object.assign(Styles.ft,Styles.txt)

  1. 遍歷 主要用數(shù)組map方法

    例如:

            arr.map((item,index)=>{
                        return (
                                    <li 
                                        className="lis"
                                        key={item.id}
                                    >
                                         <p>品牌:{ item.name }</p>
                                         <p>價(jià)格:{ item.price }</p>
                                    </li>
    
                            );
    
                    })
    
                  }
    
    

注意:遍歷時(shí)要給遍歷的元素添加key屬性,否則會(huì)報(bào)警告

6.顯示隱藏 主要利用js的三目運(yùn)算符實(shí)現(xiàn)

格式:  條件 ? 滿足 : 不滿足

例如: { flag ? good : bad }

7.如何綁定事件

     <標(biāo)簽名 onClick={ this.函數(shù)名.bind(this) }>內(nèi)容</標(biāo)簽名>

例如:

     <button onClick={ this.changeShowHide.bind(this) }>切換顯示和隱藏</button>

es6編寫reactjs事件處理函數(shù)綁定this三種方式:
https://www.cnblogs.com/feiying100/p/6649611.html

8.如何設(shè)置初始值

 constructor() {
    super();
    //相當(dāng)于vue中的data   Vue({ data:{  } })
    this.state={
        屬性1:值1檀咙,
        屬性2:值2
        .....
    }
}

訪問(wèn)值:this.state.屬性名

  1. 如何同步數(shù)據(jù)到視圖(頁(yè)面)上
 this.setState({
      要改的屬性:值
})
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末雅倒,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子弧可,更是在濱河造成了極大的恐慌蔑匣,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,451評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棕诵,死亡現(xiàn)場(chǎng)離奇詭異裁良,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)校套,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門价脾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人笛匙,你說(shuō)我怎么就攤上這事侨把。” “怎么了膳算?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,782評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵座硕,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我涕蜂,道長(zhǎng)华匾,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,709評(píng)論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮蜘拉,結(jié)果婚禮上萨西,老公的妹妹穿的比我還像新娘。我一直安慰自己旭旭,他們只是感情好谎脯,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,733評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著持寄,像睡著了一般源梭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上稍味,一...
    開(kāi)封第一講書(shū)人閱讀 51,578評(píng)論 1 305
  • 那天废麻,我揣著相機(jī)與錄音,去河邊找鬼模庐。 笑死烛愧,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的掂碱。 我是一名探鬼主播怜姿,決...
    沈念sama閱讀 40,320評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼疼燥!你這毒婦竟也來(lái)了沧卢?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,241評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤悴了,失蹤者是張志新(化名)和其女友劉穎搏恤,沒(méi)想到半個(gè)月后违寿,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體湃交,經(jīng)...
    沈念sama閱讀 45,686評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,878評(píng)論 3 336
  • 正文 我和宋清朗相戀三年藤巢,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了搞莺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,992評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡掂咒,死狀恐怖才沧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情绍刮,我是刑警寧澤温圆,帶...
    沈念sama閱讀 35,715評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站孩革,受9級(jí)特大地震影響岁歉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜膝蜈,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,336評(píng)論 3 330
  • 文/蒙蒙 一锅移、第九天 我趴在偏房一處隱蔽的房頂上張望熔掺。 院中可真熱鬧,春花似錦非剃、人聲如沸置逻。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,912評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)券坞。三九已至,卻和暖如春肺素,著一層夾襖步出監(jiān)牢的瞬間报慕,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,040評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工压怠, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留眠冈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,173評(píng)論 3 370
  • 正文 我出身青樓菌瘫,卻偏偏與公主長(zhǎng)得像蜗顽,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子雨让,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,947評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 箭頭函數(shù)與普通函數(shù)區(qū)別 React:React 起源于 Facebook ,誕生說(shuō)2013,4React主要用于構(gòu)...
    Live_60c3閱讀 245評(píng)論 0 4
  • 1.React 的學(xué)習(xí)資源 react官方首頁(yè)https://facebook.github.io/react/ ...
    賈里閱讀 2,904評(píng)論 0 0
  • React簡(jiǎn)介 React是一個(gè)用于構(gòu)建用戶界面的JavaScript庫(kù)雇盖,主要有以下幾個(gè)特點(diǎn): 聲明式設(shè)計(jì)--Re...
    紫諾_qiu閱讀 896評(píng)論 0 2
  • 一、React簡(jiǎn)介 React 起源于 Facebook 的內(nèi)部項(xiàng)目栖忠,因?yàn)樵摴緦?duì)市場(chǎng)上所有 JavaScript...
    艾剪疏閱讀 326評(píng)論 0 2
  • 你從西邊而來(lái) 晚霞中騎著白馬 滿臉風(fēng)塵 你說(shuō)你是個(gè)王子 卻沒(méi)有一個(gè)隨從 長(zhǎng)安依舊長(zhǎng)安 你卻只是大唐的蕃人 在長(zhǎng)安的...
    賽灣閱讀 227評(píng)論 0 0