React學(xué)習(xí)途徑和資料分享

這段時(shí)間因?yàn)轫?xiàng)目的原因,要做web前端,趁此機(jī)會(huì)調(diào)研了一下當(dāng)前前端的技術(shù),根據(jù)調(diào)研的結(jié)果,React毫無(wú)疑問是現(xiàn)在的NO.1,遂決定入坑學(xué)一下React。

工欲善其事必先利其器,搜集整理網(wǎng)上資料制定了一個(gè)學(xué)習(xí)React的基礎(chǔ)路線,希望能幫助自己快速的入門React。也跟大家分享一下。

文章大綱如下:

1 React學(xué)習(xí)“8”步走
2 學(xué)習(xí)資料總結(jié)

First of all

為了穩(wěn)固基礎(chǔ),這個(gè)React學(xué)習(xí)的基礎(chǔ)路線,我們一定要逐步地來(lái)進(jìn)行學(xué)習(xí)。

不要想著通過接觸 React 來(lái)將 ES6 + Webpack + Babel + React + Routing + AJAX 這些知識(shí)一次性學(xué)好。

欲速則不達(dá)!

在文章的最后,我將一些相應(yīng)的資料也做了相應(yīng)的羅列,大家可以根據(jù)自己的需求查看、下載。

1 React學(xué)習(xí)“8”步走

第0步:JavaScript

在學(xué)習(xí)之前的你,理應(yīng)對(duì) JavaScript 有所了解,或至少是 ES5 標(biāo)準(zhǔn)下的 JavaScript??扇袅私馍跎?,那么,你就應(yīng)該停下手頭上的工作,學(xué)習(xí)好該基礎(chǔ)部分后,才可邁步前行。

可倘若早已熟知 ES6 所帶來(lái)的新特性,那么請(qǐng)繼續(xù)。因?yàn)槿缒闼?,React 的 API 接口在 ES5 和 ES6 兩標(biāo)準(zhǔn)間存在著較大的差異性。所以對(duì)于你來(lái)說(shuō),熟悉兩種標(biāo)準(zhǔn)其特性的不同至關(guān)重要。盡管發(fā)生了異常,你也可以通過兩種標(biāo)準(zhǔn)之間的轉(zhuǎn)換,尋找出廣泛有效的答案。

第0.5步:NPM

NPM 在 JavaScript 世界中,可謂是軟件管理方的王者。然而,在這里你卻并不需要學(xué)習(xí)太多關(guān)于 NPM 自身的東西。只要在安裝好后連同 Node.js,學(xué)習(xí)如何使用其安裝軟件即可。

npm install

第1步:React

學(xué)習(xí)一個(gè)新的編程技術(shù),我們往往會(huì)從熟悉的Hello World教程開始。首先,我們可以通過使用 React 官方教程所展示的原生 HTML 文件來(lái)實(shí)現(xiàn),而該文件包含有一些 script 標(biāo)簽。其次,我們還可以通過使用像 React Heatpack 這樣的工具來(lái)快速上手。

第2步:構(gòu)建后摒棄

一旦你完成了 “Hello World” 的基礎(chǔ)課程,你將如何去學(xué)習(xí) ”think in React” 的課程。

請(qǐng)嘗試去構(gòu)建一些官方文檔列表中所展示的項(xiàng)目(TODOs、beers、movies),然后,借此學(xué)會(huì)數(shù)據(jù)流(data flow)的工作原理。

當(dāng)然,你也可以把一些已有的大型 UI 項(xiàng)目(Twitter、Reddit、Hacker News等)分割成一小塊來(lái)構(gòu)建 —— 即把其瓜分成組件(components),并使用靜態(tài)的數(shù)據(jù)去進(jìn)行構(gòu)建。

總的來(lái)說(shuō),我們需要構(gòu)建的,理應(yīng)是一些小型且可被摒棄的應(yīng)用程序項(xiàng)目。這些項(xiàng)目必須是可摒棄的。否則,你將深陷于一些不為重要的東西,如可維護(hù)性和代碼結(jié)構(gòu)等。

第3步:Webpack

構(gòu)建工具是學(xué)習(xí)過程中的一個(gè)主要的難點(diǎn)。搭建 Webpack 的環(huán)境會(huì)讓你感覺是一件繁雜的工作,而且,完全不同于 UI 代碼的書寫。這就是為什么我要將 Webpack 放在了整個(gè)學(xué)習(xí)路線的第三步,而不是第零步。

在這里,推薦一篇名為《React+Webpack快速上手指南》的文章,作為對(duì) Webpack 的簡(jiǎn)介。

一旦你清楚 Webpack 所負(fù)責(zé)的工作(打包生成各種的文件,而不僅僅是 JS 文件) —— 以及其中的工作原理(適用于各種文件類型的加載器),那么,Webpack 對(duì)于你來(lái)說(shuō)將會(huì)是一個(gè)更為欣喜的部分。

第4步:ES6

如今,進(jìn)入了整個(gè)路線的第四步。上述的所有將會(huì)作為下面的鋪墊。之前,在學(xué)習(xí) ES6 過程中,所學(xué)到的部分也將會(huì)讓你寫出更為利落簡(jiǎn)潔的代碼 —— 以及性能更高的代碼?;叵肫鹨婚_始那時(shí)候,某些問題本不應(yīng)卡住在那 —— 但現(xiàn)在的你,已然清楚知道為啥 ES6 能完美地融合在其中。

ES6中,你應(yīng)該學(xué)習(xí)一些常用的部分:箭頭函數(shù)(arrow functions)、let/const、類(classes)、析構(gòu)(destructuring)和 import

第5步:Router

有些人會(huì)把 React Router 和 Redux 這兩個(gè)概念混為一談 —— 但是,它們之間并沒有任何的關(guān)系或依賴。因此,你可以(也理應(yīng))在深入 Redux 之前學(xué)習(xí)如何去使用 React Router。

由于在之前“think in React”的教程中,積累了堅(jiān)實(shí)的基礎(chǔ)。因此,相比于第一天學(xué)習(xí) React Router,我們此時(shí)更能從基于組件(component-based)的構(gòu)建方式中,領(lǐng)悟出更多的精髓。

下面幾個(gè)鏈接可幫助你基本掌握Router
初入react-router新手入門
react-router學(xué)習(xí)筆記之入門
React Router的一個(gè)完整示例
React路由管理 —— React Router 總結(jié)
React-Router 中文簡(jiǎn)明教程

第6步:Redux

React 只是 DOM 的一個(gè)抽象層,并不是 Web 應(yīng)用的完整解決方案。
有兩個(gè)方面,它沒涉及。

  • 代碼結(jié)構(gòu)
  • 組件之間的通信

對(duì)于大型的復(fù)雜應(yīng)用來(lái)說(shuō),這兩方面恰恰是最關(guān)鍵的。因此,只用 React 沒法寫大型應(yīng)用。

為了解決這個(gè)問題,2014年 Facebook 提出了 Flux 架構(gòu)的概念,引發(fā)了很多的實(shí)現(xiàn)。2015年,Redux 出現(xiàn),將 Flux 與函數(shù)式編程結(jié)合一起,很短時(shí)間內(nèi)就成為了最熱門的前端架構(gòu)。

構(gòu)建一次性的應(yīng)用程序。通過些許的 Redux 經(jīng)驗(yàn),去逐漸理解其背后的工作原理。

Redux 中文文檔
Redux 入門教程

2 學(xué)習(xí)資料總結(jié)

除了上面的資料之外,我還準(zhǔn)備了一些較為完整的資料,由淺及深的介紹了React的知識(shí),認(rèn)真仔細(xì)的看完這些書籍,并實(shí)踐其中的代碼,相信一定能夠掌握React的開發(fā)。

書籍篇

學(xué)習(xí)書籍是最高效的方法,能迅速帶你了解某個(gè)知識(shí)的整個(gè)框架結(jié)構(gòu),由表及里。

深入REACT技術(shù)棧.pdf
react快速上手開發(fā)完整版.pdf
深入淺出React和Redux.pdf

網(wǎng)站篇

網(wǎng)站中總結(jié)的知識(shí),是對(duì)某類知識(shí)的一個(gè)細(xì)化,更加專注于某類問題的解決方法
React官網(wǎng)的中文版(重要資料)
React.js 小書

視頻篇

慕課網(wǎng)視頻
51CTO視頻
百度網(wǎng)盤視頻 密碼:s0fc

P.S. 上面的書籍篇、網(wǎng)站篇和視頻篇部分努力學(xué)習(xí)好之后,也基本算是對(duì)React入門了,后面就是通過項(xiàng)目去不斷加深自己的理解。

image.png

祝大家學(xué)有所成?。?!

最后編輯于
?著作權(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)容

  • React的學(xué)習(xí)資源 這個(gè)文章好久沒有更新了,資源算比較老舊的了,畢竟前端更新還是非??斓摹?半年不學(xué)習(xí),都不知道...
    izhongxia閱讀 23,621評(píng)論 11 629
  • 這是一個(gè)好的方法,不僅僅是工作中,生活中一樣實(shí)用! 或者創(chuàng)業(yè)或者做事情或者旅行。 可以把項(xiàng)目捋一捋,看看哪些沒有做...
    烏龜?shù)穆?/span>閱讀 540評(píng)論 0 1
  • 那一夜,你在燈火闌珊處, 那一夜,你面朝大海背對(duì)人, 那一夜,海風(fēng)吹拂,你的發(fā)絲飄飄, 那一夜,晚風(fēng)撩拂你的裙。 ...
    小啟明星閱讀 407評(píng)論 1 14
  • 今天推薦一本書,書名叫做《從幼兒園到大學(xué)的零用錢計(jì)劃》。 作者保羅·W·利米特,是一位具有15年工作經(jīng)驗(yàn)的職業(yè)財(cái)務(wù)...
    蕓的思考閱讀 1,383評(píng)論 4 3
  • 人生不能過度理想化,因此對(duì)人生的想象不可過度,如果過度那很可能要受到挫敗,更是一種自我加壓和自我折磨。雖然如此...
    來(lái)喜wzf閱讀 370評(píng)論 0 1

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