什么是服务器端渲染?
在 Web 开发中,网页的渲染有两种方式:客户端渲染和服务器端渲染。客户端渲染指的是浏览器加载 HTML 文件后,通过 JavaScript 执行将数据绑定到模板中,然后再将页面展示出来;服务器端渲染则是服务端生成渲染好的 HTML 文件,再返回给浏览器展示。
那么为什么需要服务器端渲染呢?首先,服务器端渲染可以提高页面的加载速度,因为客户端渲染需要等待数据和脚本加载完毕才能展示页面,而服务器端渲染可以直接将渲染好的 HTML 文件返回给浏览器,不需要等待加载;其次,服务器端渲染可以提高 SEO 的效果,因为搜索引擎可以直接抓取到渲染好的 HTML 文件,而不需要执行 JavaScript。
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,适合于开发高并发、高性能、实时应用程序。而 Express 则是 Node.js 的一个 Web 开发框架,提供了丰富的中间件和功能,可以轻松地构建 Web 应用程序。
在 Express 中进行服务器端渲染,需要使用模板引擎来渲染 HTML 文件。常用的模板引擎有 EJS、Pug、Handlebars 等。我们以 EJS 为例,来介绍如何在 Express 中进行服务器端渲染。
1. 安装依赖
首先,需要安装 Node.js 和 Express,可以通过 npm 安装。打开终端,输入以下命令:
npm install express ejs
2. 创建 Express 应用
在创建 Express 应用之前,需要在项目目录下创建一个 views 文件夹,用来存放模板文件。在 views 文件夹下创建 index.ejs 文件,内容如下:
-- -------------------- ---- ------- --------- ----- ------ ------ ---------- ----- ---------- ------- ------ ------- ------- ------- ------- -------
这是一个简单的 HTML 文件,其中用到了 EJS 的语法。EJS 使用 <%
和 %>
符号包裹 JavaScript 代码,在 JavaScript 代码中可以访问 EJS 中定义的变量。
接着,创建一个 app.js 文件,内容如下:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- --- - ---------- ------------- -------- ------- ------------ -------- ----- ---- - ------------------- - ------ ------ ----- -------- -------- -- --- ----- -- ----- --- --- ---------------- -------- -- - -------------------- --- --------- -- ---- -------- ---
在 app.js 文件中,我们使用 app.set()
方法设置了 EJS 模板引擎,告诉 Express 要使用 EJS 来渲染模板文件。然后,我们创建了一个路由,使用 res.render()
方法来渲染 index.ejs 模板文件,并传递了一个对象作为参数,对象包含了两个属性:title 和 message。最后,使用 app.listen()
方法启动了应用程序,并监听 3000 端口。
3. 运行 Express 应用
在终端中进入项目目录,运行以下命令:
node app.js
然后在浏览器中访问 http://localhost:3000,即可看到渲染好的网页。
总结
在本文中,我们介绍了什么是服务器端渲染,以及如何使用 Node.js 和 Express 进行服务器端渲染。服务器端渲染可以提高页面加载速度和 SEO 的效果,能够使用户更快地访问到网页,并对搜索引擎友好。同时,Express 的使用也使得开发者能够更加快速地构建 Web 应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6548c0747d4982a6eb303036