likes
comments
collection
share

重学ReactJS系列文章之前言

作者站长头像
站长
· 阅读数 67

本书目的

本书名叫《重学React》,作者枫林,runjs.work开发者。

为何要重新学?

重学的目的,是为了系统地、全面地了解React相关技术。从React刚推出(2014年),到现在的React 18,站长本人几乎是一路使用React做项目产品过来的。包括本站(runjs.work),也是用React打造。但是,尽管已经用了这么多年,我对React的了解,始终是似懂非懂。经常碰到一些坑,实际上官网解答的很清楚,结果却花了很长时间google/百度,才找到答案。

这就提醒我,要想再在React相关技术上有所突破,不说去理解源码吧,起码官方文档要认真地研读一遍。React官网,本身就是一个自成体系,知识点覆盖完备的教程。我相信,一次完整地研读,足以对React的理解有个质的提升。

怎么个学法?

无笔记,不学习。

runjs.work,是为程序员,特别是前端程序员量身打造的笔记工具。

  • 所有文章,都是基于RunJS markdown模板书写,同时配备丰富的RunJS代码示例。
  • 本书章节设置,基本与React官网一致。
  • 本书是React官网的补充,所以不会考虑覆盖官网的每个基础知识点。补充的部分包括:示例、最佳实践、why and how、踩坑代码等。

React官网中文版React官网英文版

如果跟学

如果你对本书的主题以及学习的方式感兴趣,可以随时加本人微信(jinlingxi)交流。

本书目录

MAIN CONCEPTS(核心概念)

1. Hello World

2. Introducing JSX(JSX简介)

3. Rendering Elements(元素渲染)

4. Components and Props(组件 & Props)

5. State and Lifecycle(State &生命周期)

6. Handling Events(事件处理)

7. Conditional Rendering(条件渲染)

8. Lists and Keys(列表 & Key)

9. Forms(表单)

10. Lifting State Up(状态提升)

11. Composition vs Inheritance(组合 vs 继承)

12. Thinking In React(React哲学)

ADVANCED GUIDES(高级指引)

Accessibility(无障碍)

Code-Splitting(代码分割)

Context

Error Boundaries(错误边界)

Forwarding Refs(Refs转发)

Fragments

Higher-Order Components(高阶组件)

Integrating with Other Libraries(与第三方库协同)

JSX In Depth(深入JSX)

Optimizing Performance(性能优化)

Portals

Profiler

React Without ES6(不使用ES6)

React Without JSX(不使用JSX)

Reconciliation(协调)

Refs and the DOM

Render Props

Static Type Checking(静态类型检查)

Strict Mode(严格模式)

Typechecking With PropTypes(使用PropTypes类型检查)

Uncontrolled Components(非受控组件)

Web Components

API Reference

React.Component

ReactDOM

ReactDOMClient

ReactDOMServer

DOM Elements(DOM元素)

SyntheticEvent(合成事件)

Test Utilities

Test Render

JS Environment Requirements(Javascript环境要求)

Glossary(术语表)

HOOKS

Using the state Hook(使用State Hook)

Using the Effect Hook(使用Effect Hook)

Rules of Hooks(Hook规则)

Building Your Own Hooks(自定义Hook)

Hooks API Reference(Hook API索引)

TESTING(测试)

Testing Overview(测试概览)

Testing Recipes(测试技巧)

Testing Environments(测试环境)