React.js :簡介窗骑,安裝和Demo

有一點前端的知識女责,React.js零基礎(chǔ),簡單記錄一下學(xué)習(xí)的過程创译。

React.js

這是個前端框架抵知?
只用過 jQuery,在查 React.js 的資料過程中软族,感受到了前端對還在使用 jQuery 做開發(fā)的程序員深深的怨念……希望學(xué)完 React.js 能理解吧~
React.js刷喜,現(xiàn)在就當它是一個做頁面的庫吧,剛開始接觸覺得寫法相當奇怪立砸,然后用著用著就覺得掖疮,哎設(shè)計者 你他娘的 還真是個天才。

組件 Component

比如說颗祝,我自己寫了這么一個玩意浊闪,計數(shù)器。


某天發(fā)現(xiàn)可以用在購物車的界面里螺戳,然后搁宾,我就需要把 HTML 標簽,和對應(yīng)的 js 事件全都拷貝過去倔幼,找起來可能很麻煩盖腿。后端表示,能直接把這玩意當個類(組件)使用损同,用的時候 new 一個翩腐,豈不美滋滋。
React.js 表示膏燃,我 可能 就是干這個事的栗菜。
這個計數(shù)器,就可以當做一個組件蹄梢。然后覺得疙筹,在 React.js 眼里富俄,Web頁面就是組件套組件,這樣開發(fā)起來不會特別零碎么而咆,雖然 HTML 也是這樣霍比,那個寫法好歹有全局感…… 算了算了,先學(xué)先學(xué)暴备。

create-react-app

我要學(xué)React.js 啊悠瞬,這是個什么玩意?
前端的發(fā)展真快涯捻,我已經(jīng)不太懂這幫人在干嘛了浅妆。我曾天真的以為,現(xiàn)在還是在用 <script> 標簽引入一個或許叫 react.js 的文件障癌,就可以做 react 開發(fā)的時代凌外。然而,React.js 是要配置“全家桶”的涛浙,能不能不管這個康辑,配起來好麻煩,讓我直接用唄轿亮,這就是create-react-app的作用疮薇,傳說中的“腳手架”。
React.js 是Facebook的我注,create-react-app 也是按咒,使用之前裝好node.jsnpmhttps://nodejs.org/en/ ),windows 下安裝包中自帶 npmnpm 5.2.0 之后又有了npx但骨,活到老學(xué)到老励七,微笑臉)。
node.js 中新建一個名稱為 hello-reactReact.js 項目的操作如下:

npx create-react-app hello-react
cd hello-react
npm start

詳見 https://github.com/facebook/create-react-app
P.S. create-react-app安裝過程可能極其糟心嗽冒,很慢很慢,可以改一下npm的源:

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

然后补履,它甚至貼心的打開了瀏覽器添坊。

Demo

可以看到 public/ 中有一個 index.html 文件,上面的歡迎頁面就是它沒錯了箫锤,然而贬蛙,你會發(fā)現(xiàn) index.html<body> 其中只有一個 id 為 root<div>

<div id="root"></div>

頁面上的東西谚攒,都是組件阳准,他們定義在 src/ 中,我們盡肯能去掉復(fù)雜的東西馏臭,把 index.js 直接改為下面這樣野蝇,直觀的感受一下:

import React, {Component} from 'react';
import ReactDOM from 'react-dom';

class HelloReact extends Component{
    render(){
        return(
            <div>hello</div>
        )
    }
}

ReactDOM.render(<HelloReact />, document.getElementById('root'));

不出所料的話,頁面自動刷新并且只顯示了 hello。

簡答梳理一下代碼绕沈,主要做了3件事锐想。

  1. 我們引入了三個類:
    React:只要使用JSX語法,就必須引入乍狐。
    React.Component:就是我們之前說的組件沒錯了赠摇。{ Component } 這樣引入,可以直接在代碼中使用 Component浅蚪, 而不用 React.Component藕帜。
    ReactDOM:用來渲染組件
  2. 定義了一個類 HelloReact
    也就是 組件,繼承自 Component 惜傲,有一個必須要實現(xiàn)的方法 render()洽故,直接返回了一段 html ……這個語法,就是 JSX 操漠。而這段 html 就是頁面內(nèi)容沒錯了收津。
  3. 調(diào)用了ReactDOM 類的 render 方法:
    把上面定義的組件 <HelloReact /> 渲染 到 root 上。

JSX

看起來我們的主要工作就是寫組件類浊伙,在里面定義好頁面撞秋,當然還有事件什么的。在這之前嚣鄙,很在意的一點就是吻贿,這個直接在 js 里寫 html 的語法問題,比如我們在 render 方法中寫了這么一段哑子。

<div className = "title">
    <span>hello</span>
</div>

emmm... 你會發(fā)現(xiàn)舅列,html 中的信息也可以用 js 寫出來,只不過不直觀就是了

{
    tag : div,
    attrs : { className : 'titile' },
    children : [
        {
            tag : span,
            attrs : null,
            children : [ 'hello' ]
        }
    ]
}

所以 React.js 中就支持了 html 標簽的寫法卧蜓,然后把 JSX 轉(zhuǎn)為 js 對象帐要,再到DOM, 最后渲染到頁面弥奸,這樣開發(fā)起來就省事多了榨惠。
可以看到上面寫的是 className 并不是 html 中的 class,可以看到之前定義類的時候已經(jīng)使用了js中一直保留的關(guān)鍵字 class盛霎,所以在 JSX 中使用 了className 代替赠橙,其他的關(guān)鍵字以后碰到再說。

BTW愤炸,可以使用

npm run eject

打開詳細的配置文件(操作不可逆)期揪,如果沒有編輯配置文件的需求,可以不eject规个。

今天就到這里了凤薛。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末姓建,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子枉侧,更是在濱河造成了極大的恐慌引瀑,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件榨馁,死亡現(xiàn)場離奇詭異憨栽,居然都是意外死亡,警方通過查閱死者的電腦和手機翼虫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進店門屑柔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人珍剑,你說我怎么就攤上這事掸宛。” “怎么了招拙?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵唧瘾,是天一觀的道長。 經(jīng)常有香客問我别凤,道長饰序,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任规哪,我火速辦了婚禮求豫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘诉稍。我一直安慰自己蝠嘉,他們只是感情好,可當我...
    茶點故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布杯巨。 她就那樣靜靜地躺著蚤告,像睡著了一般。 火紅的嫁衣襯著肌膚如雪服爷。 梳的紋絲不亂的頭發(fā)上杜恰,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天,我揣著相機與錄音层扶,去河邊找鬼箫章。 笑死烙荷,一個胖子當著我的面吹牛镜会,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播终抽,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼戳表,長吁一口氣:“原來是場噩夢啊……” “哼桶至!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起匾旭,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤镣屹,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后价涝,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體女蜈,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年色瘩,在試婚紗的時候發(fā)現(xiàn)自己被綠了伪窖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,567評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡居兆,死狀恐怖覆山,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情泥栖,我是刑警寧澤簇宽,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站吧享,受9級特大地震影響魏割,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜耙蔑,卻給世界環(huán)境...
    茶點故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一见妒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧甸陌,春花似錦须揣、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至牲尺,卻和暖如春卵酪,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背谤碳。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工溃卡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蜒简。 一個月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓瘸羡,卻偏偏與公主長得像,于是被迫代替她去往敵國和親搓茬。 傳聞我的和親對象是個殘疾皇子犹赖,可洞房花燭夜當晚...
    茶點故事閱讀 45,585評論 2 359

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

  • 原教程內(nèi)容詳見精益 React 學(xué)習(xí)指南队他,這只是我在學(xué)習(xí)過程中的一些閱讀筆記,個人覺得該教程講解深入淺出峻村,比目前大...
    leonaxiong閱讀 2,843評論 1 18
  • 最近看了一本關(guān)于學(xué)習(xí)方法論的書麸折,強調(diào)了記筆記和堅持的重要性。這幾天也剛好在學(xué)習(xí)React粘昨,所以我打算每天堅持一篇R...
    gaoer1938閱讀 1,690評論 0 5
  • 自己最近的項目是基于react的垢啼,于是讀了一遍react的文檔,做了一些記錄(除了REFERENCE部分還沒開始讀...
    潘逸飛閱讀 3,402評論 1 10
  • 1张肾、選取微博熱搜榜或百度搜索風(fēng)云榜中的一個熱點膊夹,結(jié)合你的公眾號,做一個選題捌浩。 2放刨、根據(jù)你的公眾號定位,你認為最適合...
    悠悠紫蘭閱讀 267評論 0 0
  • 春天已迫不及待 冬天卻方興未艾 小學(xué)生說尸饺,寒假寒假快快來 文藝青年說进统,啊春天,我的愛 上班大叔說浪听,日子過得真快 種...
    Yumi玉米粒閱讀 526評論 1 3