React小白入门 | 青训营笔记

67 阅读3分钟

引言: 说实话,React的这一套东西还挺抽象的,光听课也就听了说说了,当前前面的基础课程也是如此。必须得花大量的时间去探索,去理解,去学习,去练习。和VUE比起来,有相似点也有不同点,下面聊一聊react的小白是怎样慢慢敲react的大门的。


1. 前端开发方式演进(很喜欢react的历史)

  • 前端混沌时代
    在“前端混沌时代”,页面主要在服务端开发并生成,服务端生成什么页面,浏览器端就展示什么样的页面,这是时代,是多么单纯。
  • 小前端时代
    随后进入“小前端时代”,形成了以 HTML 为骨架,CSS 为外貌,JavaScript 为交互体验的前端开发模式,在这个时代,出现了 Ajax 这种划时代意义的技术,让静态网页升级为动态网页,并随着 JavaScript 的发展,前端能做更加多样的页面。当时出现了 jQuery 这类 JS 工具库,主要用来「操作 DOM」、「处理数据交互]。
  • 大前端时代
    在小前端时代稳定发展一段时间之后,工程师们开始发现前端**「需要呈现的数据量越来越大」「网页动态交互效果也越来越多」,jQuery 这类工具库「越来越频繁操作 DOM」** ,使得应用性能越来越差,页面越来越卡,慢慢前端大佬们开始解决这些问题。
    在 2009 年诞生了 NodeJS ,将前端带入全新方向,为 AngularJS(2009年诞生),React(2011年诞生)和 Vuejs (2014年诞生)三大框架的**「诞生奠定基础」** 。这些框架通过一定的分析比较算法,实现同等效果下最小的 DOM 开销,提高应用性能。前端开发进入“大前端时代”。
  • 全栈前端时代
    “大前端时代”之后 NodeJS 社区蓬勃发展,4G 网络也在不断普及发展,很多传统 PC 网站开始转向手机、平板等移动端设备,开始出现了混合应用技术(Hybrid APP),出现了各种开发框架,如 Cordova、React-Native、Weex、Electron等,还有最近比较火的 Flutter。

2. react框架特点:

  1. 声明式设计:React 使创建交互式 UI 变得轻而易举。为你应用的每一个状态设计简洁的视图,当数据变动时 React 能高效更新并渲染合适的组件
  2. 组件化: 构建管理自身状态的封装组件,然后对其组合以构成复杂的 UI。
  3. 高效:React通过对DOM的模拟,最大限度地减少与DOM的交互。使用虚拟DOM+diff算法,尽量减少与真实DOM的交互
  4. 灵活:无论你现在使用什么技术栈,在无需重写现有代码的前提下,通过引入 React 来开发新功能。 使用JSX语法:JSX是JavaScript语法的扩展,可以极大地提高JS运行效率。
  5. 单向响应的数据流:React实现了单向响应的数据流,减少了重复代码,比传统数据绑定方式更简单。

3. react基本使用:

  1. 脚手架安装React项目 安装 create-react-app 脚手架来创建 react 项目。 npm install -g create-react-app create-react-app my-app ...
  2. JSX语法 JSX是一种 JavaScript 的语法扩展,react 用它来声明 React 中的元素。 你可以在 JSX 当中任意地使用 JavaScript 表达式,不过在 JSX 当中的表达式要包含在大括号里。 //JSX语法 ...
  3. 组件 3.1、定义组件 组件可以接收任意的输入值(称之为“props”),并返回一个 React 元素,即 JS 对象。 函数定义组件 ...
  4. 类组件 使用元素渲染或者是函数定义组件渲染来更新页面非常不方便,所以在一个 react 项目中我们应该使用类组件来渲染页面。 ……