🌐 无需 Next.js、Remix、Nuxt.js 等即可进行服务器端渲染。
大家好!也许你想在项目中实现服务端渲染,但又不想重新设计现有的架构?那么这篇文章就是为你准备的。今天,我将尝试告诉你如何做到这一点。
值得注意的是,此方法适用于任何 Web 项目架构,无论是 WordPress、Vue.js 还是其他任何架构。
使用 HMPL
你可以通过该模块实现服务端渲染,连接方式很简单,使用方式如下:
或者
npm i hmpl-js
现在,您可以安全地在项目中使用该模块。让我们尝试从服务器获取一些组件:
Example
得益于请求对象的扩展标记,我们可以将字符串编译成现成的 DOM 节点,并且可以轻松地将其渲染到 DOM 中。
结果如下:

这样,我们的组件就在服务器上渲染,我们只需在客户端显示它们。
为了更好地理解这个过程,让我们来讨论一下理论。
服务器端渲染的工作原理
此列表逐步描述了服务器端渲染过程:
在图中,它看起来像这样:

现在,让我们看看代码是什么样的:
这是一个使用 Node.js 与 Express 和 EJS 作为 SSR 模板引擎的简单示例:
**1. 使用 Express 设置 Node.js**
首先,您需要创建一个新的 Node.js 项目并安装 Express 和 EJS:
npm install express ejs
**2. 创建服务器**
创建一个名为“server.js”的文件:
const express = require('express');
const app = express();
const PORT = 3000;
// Set EJS as the templating engine
app.set('view engine', 'ejs');
// Sample data
const data = {
title: 'Server Side Rendering Example',
content: 'This is an example of Server Side Rendering using Node.js and EJS.'
};
// Define a route
app.get('/', (req, res) => {
// Render the HTML using EJS
res.render('index', { data });
});
// Start the server
app.listen(PORT, () => {
console.log(`Server is running on http://localhost:${PORT}`);
});**3. 创建 EJS 模板**
创建一个名为“views”的文件夹,并在其中创建一个名为“index.ejs”的文件:
<%= data.title %>
<%= data.title %>
<%= data.content %>
**4.启动服务器**
运行服务器:
node server.js
现在,当您导航到“http://localhost:3000”时,服务器将呈现完整的 HTML 页面并将其发送到浏览器。
结论
当您不需要依赖框架和库的架构时,这种方法很棒,但同时,由于这个特性,由于页面是从客户端请求的,搜索机器人将看不到该页面。因此,当您不需要过多考虑 SEO 时,这种方法很合适。

另外,如果您用您的星星支持**项目**,我会很高兴。谢谢!
星 HMPL ☆