官术网_书友最值得收藏!

前言 Preface

React Router自2014年2月發(fā)布第一個(gè)版本,到2019年10月發(fā)布v5.1.2,已經(jīng)經(jīng)歷了大大小小130多個(gè)版本的迭代演進(jìn)。從2020年1月的GitHub數(shù)據(jù)來看,有超過80萬個(gè)倉庫的依賴包含了React Router,同時(shí)NPM上依賴React Router的react-router包數(shù)量已超過5200個(gè)。2019年,在NPM源中,React Router的react-router包周平均下載量超過250萬次。以上數(shù)據(jù)足以說明,React Router幾乎成了React生態(tài)中路由的標(biāo)準(zhǔn)解決方案。

鑒于目前相關(guān)系統(tǒng)介紹React Router的技術(shù)圖書比較匱乏,特編寫此書以饗讀者。本書基于React開發(fā)框架,在提供基礎(chǔ)知識的同時(shí),將基于React Routerv5.1.2進(jìn)行介紹。以下是各章節(jié)內(nèi)容。

第1章,主要介紹與導(dǎo)航相關(guān)的JavaScript前驅(qū)知識,為路由框架學(xué)習(xí)提供基礎(chǔ)知識儲備。

第2章,講解history庫的基礎(chǔ)知識及原理,并介紹與history庫相關(guān)的限制及注意事項(xiàng),幫助讀者學(xué)習(xí)導(dǎo)航基礎(chǔ)。

第3章,介紹React v16.3及之后版本的一些新特性,包括Context、Hooks等,旨在幫助讀者學(xué)習(xí)與理解Router設(shè)計(jì)中的相關(guān)知識。

第4章,首先對React Router進(jìn)行基本的介紹,并對React Router的發(fā)展歷程進(jìn)行梳理,分析React Router的版本演進(jìn)過程,使讀者對React Router有一個(gè)全方位的了解。之后,從一個(gè)簡單的工程實(shí)例出發(fā),使讀者了解React Router的簡單使用方法,并引出React Router三要素,為后面章節(jié)做好鋪墊。

第5章,全面介紹路由系統(tǒng)的第一個(gè)基本要素——Router。在對不同種類的Router進(jìn)行介紹的同時(shí),通過源碼介紹Router的基本原理,并介紹Router相關(guān)的Hooks。學(xué)完本章,將為理解整個(gè)路由系統(tǒng)的原理打好重要的基礎(chǔ)。

第6章,介紹路由系統(tǒng)的第二個(gè)要素——Route。首先介紹Route中的兩個(gè)基本元素:路徑與渲染,并介紹Route為組件提供的屬性與Route的相關(guān)配置。在通過Route源碼鞏固后,通過相關(guān)Hooks與多個(gè)實(shí)戰(zhàn)案例,為讀者提供豐富的實(shí)戰(zhàn)經(jīng)驗(yàn)總結(jié)。

第7章,介紹路由系統(tǒng)中的導(dǎo)航,包括基本導(dǎo)航組件、帶激活態(tài)的導(dǎo)航組件等。在介紹基礎(chǔ)使用方法的同時(shí),也對源碼實(shí)現(xiàn)進(jìn)行分析,幫助讀者深入了解導(dǎo)航組件的設(shè)計(jì),并通過實(shí)戰(zhàn)案例強(qiáng)化讀者對導(dǎo)航的理解。

第8章,介紹幫助組件及方法,恰當(dāng)?shù)厥褂孟嚓P(guān)組件或方法,可以提升開發(fā)效率。本章在介紹各組件與方法的基礎(chǔ)用法時(shí),也穿插了各組件的源碼解析,并通過實(shí)戰(zhàn)案例,幫助讀者深入學(xué)習(xí)和掌握各組件的設(shè)計(jì)思路及實(shí)際用法,提升讀者在實(shí)戰(zhàn)中的開發(fā)效率。

第9章,在學(xué)好以上各章知識的基礎(chǔ)上,讀者能清晰地看到路由系統(tǒng)的全貌,且對React Router有全面的掌握。以此為基礎(chǔ),本章提供多個(gè)進(jìn)階案例,更為讀者提供組件設(shè)計(jì)的思路和方法。通過本章系統(tǒng)性的學(xué)習(xí),讀者可全方位地學(xué)習(xí)與理解前端路由,并提升對前端路由的整體認(rèn)識,掌握前端領(lǐng)域路由的設(shè)計(jì)思路與方法。

本書既能幫助初學(xué)者快速上手,又能幫助有一定基礎(chǔ)的開發(fā)者深入理解React Router的設(shè)計(jì)實(shí)現(xiàn),從而加深對路由系統(tǒng)的理解。讀完本書,讀者不僅能清楚各場景是怎么使用React Router的,更能深入理解React Router的設(shè)計(jì)原理,對React Router做出定制化的改造,以面對日漸復(fù)雜的頁面結(jié)構(gòu)與需求。

閱讀本書需要有一定的React、TypeScript或JavaScript基礎(chǔ)。本書適合有JavaScript或TypeScript基礎(chǔ),想要學(xué)習(xí)使用React Router,或?qū)eact Router實(shí)現(xiàn)原理和工程實(shí)踐感興趣的開發(fā)者閱讀。

示例代碼:

讀者可以從GitHub上獲取本書的源碼:https://github.com/klfzlyt/react-router-tutorial。

本書的完成離不開在各個(gè)方面給予我支持和幫助的人,感謝我的同事曾靜益、李宏,他們給本書提出了很多寶貴的意見;感謝電子工業(yè)出版社博文視點(diǎn)的編輯宋亞東,他在編輯和審校本書期間提出了寶貴的意見;最后,感謝我的家人、朋友、同學(xué)在我創(chuàng)作本書期間給予的寬容和支持。

如果您在閱讀本書的過程中有任何問題,可以發(fā)送郵件到作者的郵箱反饋:klfzlyt@outlook.com。由于作者水平有限,不足之處在所難免,請廣大讀者批評指正。

李楊韜

主站蜘蛛池模板: 大化| 西和县| 军事| 朝阳县| 长汀县| 辽阳县| 鹤庆县| 屏山县| 平度市| 喀喇| 西安市| 江山市| 财经| 驻马店市| 沽源县| 万宁市| 东乌珠穆沁旗| 五峰| 东乌珠穆沁旗| 赤城县| 含山县| 精河县| 利辛县| 霍山县| 高碑店市| 定襄县| 烟台市| 桦川县| 林甸县| 贡山| 扎兰屯市| 宿州市| 安泽县| 昭苏县| 石家庄市| 定边县| 彭阳县| 黎平县| 招远市| 仪征市| 错那县|