react服务器渲染的示例分析
这篇文章给大家分享的是有关react服务器渲染的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
创新互联建站主营金寨网站建设的网络公司,主营网站建设方案,app开发定制,金寨h5小程序设计搭建,金寨网站营销推广欢迎金寨等地区企业咨询
前言
本文是基于react ssr的入门教程,在实际项目中使用还需要做更多的配置和优化,比较适合第一次尝试react ssr的小伙伴们。技术涉及到 koa2 + react,案例使用create-react-app创建
SSR 介绍
Server Slide Rendering,缩写为 ssr 即服务器端渲染,这个要从SEO说起,目前react单页应用HTML代码是下面这样的
React App
在项目中新建server目录,用于存放服务端代码。为了简化,我这里只有2个文件,项目中我们用的ES6,所以还要配置下.babelrc
.babelrc 配置,因为要使用到ES6
{ "presets": [ "env", "react" ], "plugins": [ "transform-decorators-legacy", "transform-runtime", "react-hot-loader/babel", "add-module-exports", "transform-object-rest-spread", "transform-class-properties", [ "import", { "libraryName": "antd", "style": true } ] ] }
index.js 项目入口做一些预处理,使用asset-require-hook过滤掉一些类似 import logo from "./logo.svg";
这样的资源代码。因为我们服务端只需要纯的HTML代码,不过滤掉会报错。这里的name,我们是去掉了hash值的
require("asset-require-hook")({ extensions: ["svg", "css", "less", "jpg", "png", "gif"], name: '/static/media/[name].[ext]' }); require("babel-core/register")(); require("babel-polyfill"); require("./app");
public/index.html html模版代码要做个调整,{{root}}
这个可以是任何可以替换的字符串,等下服务端会替换这段字符串。
React App {{root}}