React最少必要知识

题图

版权申明:
此文章首发于公众号程序员在深圳,搜索 studycode 即可关注
本文无需授权即可转载,转载时请务必注明作者

去年8月左右,看到了ThoughtWorks发布的2016年技术雷达,里面重点推荐了react.js技术,加上前端技术栈三足鼎立中,react也占据一席,其他两个分别是vue.js及angular.js,而react和其他两个的区别在于,它颠覆了整个技术栈,自成一派,抛弃了HTML和DOM,引入了JSX语法,让程序员可以更专注于逻辑代码。这一切让我对react.js充满了好奇,决定花时间学习一下,一探究竟。

本次学习我更采用了刚学到的元学习法,抛弃了曾经一贯的从基础开始的学习套路,毕竟后者周期较长,在只能用碎片时间学习的情况下,如果不能快速看到效果,学习目标很可能会夭折。在学习之前,我列了以下几点

  1. 写下为什么要学,学它是不是会让我非常激动

我终于学会前端开发了
我可以了解前端开发的思路,对我以后的程序设计有帮助(vue和react都是号称可以解决复杂问题的技术,而jQuery已经心有余而力不足)
我还想玩玩ReactNative

  1. 如果要学,计划是什么,第一个小目标要到什么程度

工作日下班后花1个小时,周末花半天
学到可以看懂代码,自己可以写出简单的应用,为深入学习铺路

  1. 选材,遇到问题如何解决

在github上搜索React Demo,直接找最简单的Demo练习
找最权威的教程方便检索,最后找到了官网阮一峰的博客ES6入门

定下了目标和计划后,就开始行动,今天为止,已经完成了目标,这个目标尽管很小,但足以让我搞懂React及Redux框架的重要知识点,以及能够帮助我继续深入学习。下面就分别来说一下整个学习过程,方便同样想学习的同学参考,毕竟网上有很多资料都是滥竽充数,不知不觉就会让你多走很多弯路。以下是我总结出来的最短学习路径:

0.搭建开发环境
1.练习最简单的Redux Demo
2.学会使用Create React App工具
3.练习React-Redux框架

0. 搭建开发环境

好的开发环境可以极大地提高你的开发和学习效率,曾经在公司用yum安装软件时掉进了一个大坑——没有使用yum国内镜像导致下载极慢,直到更换了下载源之后才追悔莫及,所以学习React之前的准备工作是

  • 安装国内的npm镜像
  • 配置编辑器,让其可以高亮、缩进、自动排版、补全等,这里就不具体说明,请大家自行google,因为每个人的编辑器可能不一样

1. 练习最简单的redux demo

在练习demo之前,你需要先学习下React基本知识,这个教程写的非常好。

React并不会帮你组织代码,所以你需要选择一个框架,Redux是目前主流的React框架,它是Flux架构的一种实现。官网上有最简单的计数器demo,直接把这个demo下载下来,对着源码练习,你可以采用以下练习方法

  • 第一遍:复制粘贴代码,注意每粘一段代码,就要对应看一下相应的输出,主要让自己脑海里有一个大致的框架:需要什么依赖,用了什么工具
  • 第二遍:尝试理解代码的含义,不懂的话马上查找我上面说的"权威教程",注意查找时只需要查找必要知识,千万不要不知不觉就把整个文档都看完才回来理解——时间伤不起啊。
  • 第三遍:在理解的基础上尝试自己写代码,不会写了可以偷看一眼源码,这个过程会加深你对知识的理解,重复第三遍,直到你可以熟练写出为止。

此方法适合有一定编程基础的同学,因为在第二遍的时候就开始理解,学习曲线陡然提升,如果你是一个零基础小白,你可能需要首先了解一点htmljs基础,同样可以在github上找几个最简单demo加以练习的方式,相信补这些知识也会很快。

这个demo是一个单页面的html文件,总共才60多行,mac下直接执行open index.html即可在浏览器查看效果,我在文档中加入了必要的注释,代码可以在这里下载,同时,你可以查看这篇教程对照学习。

2. 学会使用Create React App工具

在学习Redux框架之前,你需要先学会使用Create React App这个工具,这个工具会自动帮你创建app环境,如果你之前没了解过它,可能会和我一样,在拿到React-Redux时直接懵逼,毕竟我们无法理解未知加未知的东西,所以在继续之前你需要先学会如何使用Create React App:

  1. 安装:npm install -g create-react-app
  2. 在指定目录创建一个app:create-react-app my-app
  3. 把我的demo2下载到本地,替换掉src目录中的文件和package.json文件
  4. 执行:cd my-app && npm install && npm start

这个工具其实很简单,以上步骤是告诉你,哪些是工具生成的,哪些地方是我们可以修改的,其中src目录一般存放我们的代码,而package.json是项目配置。

3. 练习React-Redux框架

刚才你下载的demo2即是需要练习的demo,功能和demo1一样,只是组织方式有所不同,它更像一个"真实"的项目,练习方法和第1步里描述的一样,相信你很快就可以熟练

之后你可能会练习官网里的todos demo,但你很快会发现todos demo的代码复杂了很多:

  • 一是因为它使用了我们还不怎么熟悉的React-Redux框架
  • 二是它将组件分在了不同的文件中,转来转去很容易转晕

所以建议先读一下更简单的代码,demo3是个单文件的js代码,依然包括了React-Redux框架的必要的知识,通过执行npm install && npm start来运行,练完这个demo之后你便会非常有信心去阅读todos demo的代码了。

以上是我实践出的React中的最少必要知识,接着你可以继续练习其他demos,或者做一些更完整的项目,如果你感兴趣,现在就开始吧,在编程领域,唯有不断练习才是最好的学习方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269

推荐阅读更多精彩内容