欢迎来到 博文网 官方网站!
React学习手册+2

React学习手册+2

内容简介本书的主要内容有:理解

联系电话: 13983470003
产品详情

内容简介

本书的主要内容有:理解Javascript函数式编程的关键概念。深入了解React在浏览器中的运行机制。使用React组件创建应用的表现层。管理数据,减少花在调上的时间。利用React钩子管理状态及获取数据。在单页应用中使用路由方案。学服务器的角度上规划React应用。

目录

目录前言 . 1第1 章 初识React . 71.1 坚实的基础 .81.2 React 的过去和未来 91.3 资源文件 101.3.1 资源仓库101.3.2 React 工具 101.3.3 安装Node.js 12第2 章 Javascript 新特 152.1 声明变量 162.1.1 const 关键字 162.1.2 let 关键字 172.1.3 模板字符串 .202.2 创建函数 212.2.1 函数声明212.2.2 函数表达式 .222.2.3 默认参数242.2.4 箭头函数252.3 编译Javascript 282.4 对象和数组 292.4.1 析构对象292.4.2 析构数组322.4.3 对象字面量增强 322.4.4 展开运算符 .342.5 Javascript 异步编程 .362.5.1 使用fetch 处理简单的promise .372.5.2 async/await .382.5.3 构建promise 392.6 类 402.7 ES6 模块 42第3 章 Javascript 函数式编程 453.1 函数式编程是什么意思 .463.2 命令式和声明式 483.3 函数式编程基本概念 513.3.1 不可变513.3.2 纯函数 543.3.3 数据转换573.3.4 高阶函数653.3.5 递归 663.3.6 合成 703.3.7 综合应用71第4 章 React 运行机制 . 774.1 页面设置 774.2 React 元素 784.3 ReactDOM 814.4 React 组件 87第5 章 在React 中使用JSX 955.1 使用JSX 创建React 元素.955.1.1 JSX 小贴士 .965.1.2 使用JSX 映射数组 .985.2 Babel 985.3 使用JSX 编写菜谱应用 1005.4 React 片段 .1085.5 webpack 简介 1095.5.1 创建项目 1115.5.2 加载构 1225.5.3 源码映射1235.5.4 Create React App 124第6 章 React 状态管理 1276.1 构建一个评价组件 1286.2 useState 钩子 1306.3 为提高可重用而重构 1346.4 组件树中的状态 .1366.4.1 沿组件树向下发送状态 .1376.4.2 沿组件树向上发送交互 .1416.5 构建表单 .1456.5.1 使用ref 1466.5.2 受控组件1486.5.3 自定义钩子 1506.5.4 把颜色添加到状态中 1526.6 React 上下文 .1536.6.1 把颜色放入上下文 1556.6.2 使用useContext 获取颜色 1576.6.3 有状态的上下文供应组件 1586.6.4 使用上下文自定义钩子 .160第7 章 使用钩子增强组件 . 1657.eEffect 介绍 1657.1.1 依赖数组1687.1.2 深入检查依赖 .1737.1.3 何时使用useLayoutEffect 1807.1.4 钩子使用规则 .1827.1.5 使用useReducer 代码 1867.1.6 使用useReducer 处理复杂的状态 1897.1.7 提升组件能 .1927.1.8 shouldComponentUpdate 和PureComponent 1957.1.9 何时重构196第8 章 处理数据 1998.1 请求数据 .1998.1.1 随请求发送数据 2018.1.2 使用fetch 上传文件.2028.1.3 授权请求2028.1.4 在本地保存数据 2048.1.5 处理promise 状态 2088.2 渲染属 .2108.3 虚拟化列表 2148.3.1 创建useFetch 钩子 2198.3.2 创建Fetch 组件 .2228.3.3 处理多个请求 .2248.3.4 备忘值 2258.3.5 瀑布式请求 2298.3.6 限制网络速度 .2338.3.7 并行请求2358.3.8 等待值出现 2378.3.9 取消请求2388.4 GraphQL 简介 2428.4.1 GitHub GraphQL API 2428.4.2 发起一个GraphQL 请求 245第9 章 Suspense . 2539.1 错误边界组件 2559.2 代码分拆 .2599.2.1 Suspense 组件介绍 2629.2.2 使用Suspense 加载数据 2639.2.3 抛出promise 2679.2.4 构建兼容Suspense 的数据源 2729.2.5 Fiber 277第10 章 React 测试 . 28110.1 ESLint 28110.2 Prettier 28810.2.1 在项目中配置Prettier 28910.2.2 在VSCode 中使用Prettier .29110.3 对React 应用做类型检查 29210.3.1 PropTypes 29210.3.2 Flow 29610.3.3 Typescript 30110.4 测试驱动开发 30410.5 使用Jest 30510.6 测试React 组件 31110.6.1 查询 31510.6.2 测试事件 .31610.6.3 代码覆盖度 319第11 章 React Router 32111.1 使用React Router 32211.2 React Router 属 32711.3 重定向 332第12 章 React 服务器端渲染 34112.1 同构与普适 .34212.2 服务器端渲染React 34512.3 使用Next.js 做服务器端渲染 35312.4 Gaty 35912.5 React 未来展望 .361作者介绍 363封面介绍 363

摘要与插图

一个Javascript库,怎样才算?取决于GitHub上的星标数,npm上的下载数,还是Twitter上业界领军人物日常的发推数?怎样选择合适的工具来创建作品呢?我们怎么知道是否值得投入时间?又怎么知道选择的工具是合适的呢?React发布初期,围绕它的讨论很多,有人说它好,也有人持怀疑态度。那时React刚刚问世,新事是让人望而却步。为了回应这些声音,React团队的Pete Hunt写了一篇文章,题为“WhyReact?”。这篇文章建议“给它(React)五分钟时间”。他的目的是鼓励人们先尝试一下React,不要盲目定调说开发团队的方式太疯狂。是的,React是一个小型库,可能没有内置你构建应用所需的一能,但请给它五分钟时间。是的,使用React写出的代码像是Javascript代码中的HTML。当然,这些标签要经过预处理才能在浏览器中运行。为此,可能需要用到构建工具,例如webpack。请给React五分钟时间。Reaet 阿世已暴十年,很多团队认定它是的,这一切都始于初的五分钟。

我们措的是UberTwiterAirbnbTwiter,大量公司尝试了React,事实证明。Reaset确实可以帮助团队以更快的速度构建更好的产品。说到底,这不是我们)所追求的吗?不为发推,不为星标数,也不为下载数。我们的初心是使用自己喜欢的工具构建传世的产品,我们的初心是推出可让我们自豪地说出口的产品。如果这也是你的初心,或许你会爱上React

1.pan style="font-family:宋体">坚实的基础

不管你是React新手,还是想通过本书学span>React的新特,笔者都希望本书能为你在以后使用这个库的过程中建立坚实的基础。本书的目标是帮你理清学、按照学图,一步一步攀上高峰。

深人学span>React之前,要熟悉Javascript。不是说你要精通Javascript的方方面面,掌握每一种模式,而是要熟悉数组、对象和函数,这样在阅读本书时才能一帆风顺。

下一章介绍较新的Javascript句法,带你熟悉新的Javascript特,尤其是React经常用到的那部分。随后,介绍Javascript函数式编程,以便理解深入Reactr骨髓的范式。在使用React的过程中,合理使用模式写出的代码可读更高,方便重用且易于测试,这对Javascript开发人员有很大的助益。你会慢慢改头换面。接下来,介绍使用组件构建用户界面需要掌握的React基础知识。随后学应用组件,通过属和状态添加逻辑。我们将介绍React Hooks,以便在多个组件之间重用有状态的逻辑。

了解基础知识之后,我们将构建一个应用,供用户添加、编辑和删除颜色。我们将学借助HooksSuspense获取数据。在构建那个应用的过程中,我们将介绍来自React生态系统中的一些工具,处理常见的问题,例如路由,测试和服务器端渲染。

……

在线客服
微信联系
客服
扫码加微信(手机同号)
电话咨询
返回顶部