服务端渲染是指页面的渲染和生成是在服务端完成的,并将渲染好的页面返回客户端。
Next.js是一个使用React构建服务呈现Web的应用程序。它使用React语法,可以很好的实现代码的模块化,有利于代码的开发和维护。
1、默认服务端渲染模式 2、代码自动分隔使页面加载更快 3、以页面为基础的简洁的客户端路由 4、支持webapck热替换 5、可以运行在Express和其他Node.js的HTTP 服务器上 6、可以定制化专属的babel和webpack配置 7、基于React语法,可以实现代码模块化,有利于维护和开发
1、在命令行依次输入如下命令:
D:\>mkdir next-demo D:\>cd next-demo && npm init -y D:\>npm install react react-dom next --save//本地依赖 D:\>mkdir pages2、修改next-demo文件夹下的package.json中的“script”
{ "scripts": { "dev": "next" } }3、开启项目服务
D:\>npm run dev服务启动完成以后,在浏览器中访问http://localhost:3000 404页面是Next.js默认生成的页面,之所以访问的页面是404是因为我们没有设置项目主页。
Next.js是从服务端渲染生成页面,再返回给客户端展示。Next.js默认从 pages 目录下获取页面进行渲染并返回给客户端展示,且默认取 pages/index.js 作为项目的首页进行展示。 注意,pages 是默认存放页面的目录,路由的根路径也是pages目录。
import React from 'react'; export default class Index extends React.Component{ constructor(props){ super(props); } render(){ return (<div> <p>Index Page!</p> </div>) } } //或者 const Index = ()=>(<div> <p>Index Page!</p> </div>) export default Index由于Next.js默认使用Webpack构建项目,使用它的热部署功能。创建完 pages/index.js 后,再访问 http://localhost:3000 即可看到我们设置的项目主页。
至此,基于React服务器渲染Next.js框架构建一个简单项目完成。
关于Next.js的更高级的用法,可以参考官方的例子:Next.js。
如果有写的不对的,或者理解不到位地方,欢迎各位指正。