react 全栈概念学习

// 为什么要用next.js
因为前端框架如react,angular是把js加载到浏览器之后,再去渲染出内容的,这样会导致:
1.首屏展示速度慢
2.无法seo
3.初始数据只能向服务器请求
而这些问题,在同构项目中都可以解决。

// react16本身推出了server runder工具实现服务器端渲染,但是它的构建太复杂,所以目前选择next.js做react的同构项目,是非常好的选择。

// 学习内容
1.NextJS — react体系最强大的同构框架
2.OAuth授权体系 — 最广泛的第三方授权体系,如微信,QQ等
3.React Hooks — 改变react的开发模式
4.KOA — 基于node.js搭建服务器,配合next.js做项目同构
5.Redis — 业界常用的内存数据库

// NextJS优势
1.完善的React项目架构,搭建轻松
2.自带数据库同步策略,解决同构项目中最大痛点
不管用angular还是react,用服务器端渲染,服务端渲染之后再把渲染的数据在客户端进行重用,这是非常大的难点,而nextJS可以帮我们做到,可以很方便的实现
3.插件非常丰富,可以满足多种需求
4.灵活的配置,根据需求自定义

// 同构服务端的主要流程
react 全栈概念学习
// javascript 全栈项目工具分工
NextJS 提供同构渲染
Koa提供数据接口和服务端路由
Redis提供session存储