React 服务器渲染原理解析与实践
第1章 服务器端渲染基础
本章主要讲解客户端与服务器端渲染的概念,分析客户端渲染和服务器端渲染的利弊,带大家对服务器端渲染有一个粗浅认识。
1-1 课程导学
1-2 什么是服务器端渲染
1-3 什么是客户端渲染
1-4 React 客户端渲染的优势与弊端
第2章 React中的服务器端渲染
本章将借助Node.js,Webpack等工具的帮助,带大家实现一个非常基础的基于React.js技术栈的服务器端渲染模型,过程中还会讲解虚拟DOM与服务器端渲染的内在联系。
2-1 在服务器端编写 React 组件
2-2 服务器端 Webpack 的配置
2-3 实现服务器端组件渲染
2-4 建立在虚拟DOM上的服务器端渲染
2-5 Webpack 的自动打包与服务器自动重启
2-6 使用 npm-run-all 提升开发效率
第3章 同构的概念的梳理
服务器端渲染与同构的概念实际上并不完全一致,React中的SSR实际上指的是同构技术,那么什么是同构技术,它和服务器端渲染的关系是什么,React中如何实现同构呢?这一章节将给大家详细讲解。
3-1 什么是同构
3-2 在浏览器上执行一段 JS 代码
3-3 让 React 代码在浏览器上运行
3-4 工程代码优化整理
3-5 阶段总结
第4章 在SSR框架中引入路由机制
本章将给大家讲解如何在当前的SSR框架中引入React-Router,从而使得我们的服务器端渲染框架能够支持路由跳转,SSR的路由跳转比前端路由或后端路由都要复杂一些,这张我们将细致的讲解整个SSR路由的执行流程。
4-1 服务器端渲染中的路由
4-2 多页面路由跳转
4-3 使用Link标签串联起整个路由流程
第5章 SSR框架与Redux的结合
本章将讲解如何将Redux数据管理框架与SSR框架做结合,使SSR框架能够支撑复杂业务的开发。在这一章节中,我们将详细讲解服务器端异步数据获取的流程和方法,同时也给大家讲解清楚什么是同构中的数据脱水与注水。
5-1 我们常常听说的中间层是什么?
5-2 同构项目中引入 Redux
5-3 创建 Store 代码的复用
5-4 构建 Redux 代码结构 ( 1 )
5-5 构建Redux代码结构(2)
5-6 如何获取最新的secret值
5-7 流程回顾及问题分析
5-8 异步数据服务器渲染: loadData方法及路由重构
5-9 Favicon 及多级路由问题的处理
5-10 服务器端渲染获取数据
5-11 数据的脱水和注水
第6章 使用Node作为数据获取中间层
本章将讲解真正服务器端渲染中的代码架构体系,Node.js如何在这个体系中充当中间层的作用,这里面我们将详细讲解数据代理转发,cookie登陆状态传递,axios实例等概念。
6-1 使用proxy代理,让中间层承担数据获取职责
6-2 服务器端请求和客户端请求的不同处理
6-3 axios中instance的使用
6-4 redux-thunk中的withExtraArgument
6-5 renderRoutes 方法实现对多级路由的支持
6-6 登陆功能的制作
6-7 登陆接口打通
6-8 登陆状态切换
6-9 解决登陆 cookie 传递问题
6-10 翻译列表页面制作
第7章 细节问题处理
本章将讲解在SSR框架中,如何处理301重定向,404页面不存在的情况,以及面对异步数据获取失败的情况,应该如何借助Promise解决问题。
7-1 secret统一管理
7-2 借助 context 实现404页面功能
7-3 实现服务器端301重定向
7-4 数据请求失败情况下 promise 的处理
第8章 处理SSR框架中的CSS样式
本章将讲解在SSR框架中,组件和页面中CSS样式的处理方案,在这章中,我们还会应用高阶组件等设计技巧,提高代码复用性。
8-1 如何支持 CSS 样式修饰
8-2 如何实现CSS样式的服务器端渲染
8-3 多组件中的样式如何整合
8-4 LoadData 方法潜在问题的修正
8-5 使用高阶组件精简代码
8-6 列表样式优化
第9章 SEO技巧的融入
本章将讲解SEO中的一些基本技巧,以及如何通过React-helmet等技术,提升当前SSR框架的SEO效果,最后,还会给大家讲解SSR外的另一种解决SEO问题的思路:预渲染。
9-1 什么是SEO, 为什么服务器端渲染对SEO更加友好 ?
9-2 Title 和 Description的真正作用
9-3 如何做好 SEO
9-4 React-Helmet 的使用
9-5 课程总结
9-6 使用预渲染解决SEO问题的新思路
下载地址:百度网盘
React 服务器渲染原理解析与实践的更多相关文章
- React服务器渲染最佳实践
源码地址:https://github.com/skyFi/dva-starter React服务器渲染最佳实践 dva-starter 完美使用 dva react react-router,最好用 ...
- Tengine HTTPS原理解析、实践与调试【转】
本文邀请阿里云CDN HTTPS技术专家金九,分享Tengine的一些HTTPS实践经验.内容主要有四个方面:HTTPS趋势.HTTPS基础.HTTPS实践.HTTPS调试. 一.HTTPS趋势 这一 ...
- React Native运行原理解析
Facebook 于2015年9月15日推出react native for Android 版本, 加上2014年底已经开源的IOS版本,至此RN (react-native)真正成为跨平台的客户端 ...
- 【大量干货】史上最完整的Tengine HTTPS原理解析、实践与调试
本文邀请阿里云CDN HTTPS技术专家金九,分享Tengine的一些HTTPS实践经验.内容主要有四个方面:HTTPS趋势.HTTPS基础.HTTPS实践.HTTPS调试. 一.HTTPS趋势 这一 ...
- Vue视图渲染原理解析,从构建VNode到生成真实节点树
前言 在 Vue 核心中除了响应式原理外,视图渲染也是重中之重.我们都知道每次更新数据,都会走视图渲染的逻辑,而这当中牵扯的逻辑也是十分繁琐. 本文主要解析的是初始化视图渲染流程,你将会了解到从挂载组 ...
- react渲染原理深度解析
https://mp.weixin.qq.com/s/aM-SkTsQrgruuf5wy3xVmQ 原文件地址 [第1392期]React从渲染原理到性能优化(二)-- 更新渲染 黄琼 前端早读课 ...
- React Router 按需加载+服务器渲染的闪屏问题
伴随着React协议的『妥协』(v16采用MIT),React为项目的主体,这个在短期内是不会改变的了,在平时使用过程中发现了如下这个问题: 在服务器渲染的时候,刷新页面会出现闪屏的现象(白屏一闪而过 ...
- 单页面(如react,vue)网站的服务器渲染 SSR 之 SEO 大杀器 Rendertron
单页面网站,比如vue.recat框架的网站,一般都是直接从服务器推送index.html,再根据自身路由通过js在客户端浏览器渲染出完整的html页面. 但是搜索引擎的爬虫可没有这么智能(实际上go ...
- 【React】393 深入了解React 渲染原理及性能优化
如今的前端,框架横行,出去面试问到框架是常有的事. 我比较常用React, 这里就写了一篇 React 基础原理的内容, 面试基本上也就问这些, 分享给大家. React 是什么 React是一个专注 ...
随机推荐
- UVa 11362 - Phone List
题目:给你一组电话号码,推断是否有一些号码是其它的前缀(或相等). 分析:字符串.字典树.利用字典树储存查询就可以,注意两种情况处理: 1.先短后长(前缀在前):2.先长后短(前缀在后). 说明:第5 ...
- Bag of word based image retrieval
主要参考维基百科Bag of Word 在DLP领域里,bow(bag of word)是一个稀疏的向量,向量的每个元素记录词的出现次数,相当于对每篇文章都关于词典做词的直方图统计.同样的道理用在co ...
- svn 运行clear up 失败的解决的方法
SVN 的clear up命令失败的解决方法 1. 下载 sqlite3.exe 文件,放到d盘根文件夹. (能够到这里下载 http://download.csdn.net/detail ...
- mysql创建用户,并授予权限
mysql> GRANT ALL PRIVILEGES ON *.* TO jiqing@"%" IDENTIFIED BY '123456'; Query OK, 0 ro ...
- JZOJ 1003 [ 东莞市选 2007 ] 拦截导弹 —— 递推
题目:https://jzoj.net/senior/#main/show/1003 n^2 的话递推就可以啦. 代码如下: #include<iostream> #include< ...
- it人必进的几大网站
1.chinaunix网址:http://www.chinaunix.net/简介:中国最大的linux/unix技术社区. 2.itpub网址:http://www.itpub.net/ 简介:有名 ...
- [Swift通天遁地]七、数据与安全-(7)创建文件浏览器:以可视化的方式浏览沙箱文件
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 3最短路的几种解法 ------例题< 最短路 >
点击进入例题 最短路 我知道的有三种方法 1 : 深搜 每次 每次有更小的路径时 就更新 , 2 : Dijkstra 3 : floyd 前两种 是 单源 最短路径 ...
- 汇编程序44:检测点13.1 (jmp near ptr 标号指令的中断例程)
安装程序: assume cs:code //jmp near ptr 标号指令的替代实现,使用iret指令 code segment start: mov ax,cs mov ds,ax mov s ...
- Android:EditText属性大全
一.inputType属性inputType属性在EditText输入值时启动的虚拟键盘的风格有着重要的作用.比如有时需要虚拟键盘只为字符或只为数字. <span style="fon ...