前端 Ejs
EJS(Embedded JavaScript)是一个简单的模板引擎,允许你将 JavaScript 代码嵌入到 HTML 文件中,从而动态生成 HTML 页面。
EJS(Embedded JavaScript)是一个简单的模板引擎,允许你将 JavaScript 代码嵌入到 HTML 文件中,从而动态生成 HTML 页面。以下为你详细介绍:
- 简单易用:语法简单,容易上手,开发者可以快速将 JavaScript 逻辑嵌入到 HTML 中。
- 高效执行:在服务器端快速解析和渲染模板,生成最终的 HTML 内容。
- 灵活性高:支持条件语句、循环语句等 JavaScript 逻辑,可以根据不同的数据动态生成不同的 HTML 结构。
- 输出表达式:使用
<%= %>
包裹 JavaScript 表达式,用于输出表达式的值到 HTML 中。
<p>Hello, <%= name %>!</p>
- 代码块:使用
<% %>
包裹 JavaScript 代码块,用于执行 JavaScript 逻辑,不输出结果。
<% for (var i = 0; i < items.length; i++) { %>
<li><%= items[i] %></li>
<% } %>
- 注释:使用
<%# %>
包裹注释内容,注释不会在生成的 HTML 中显示。
以下是一个简单的 EJS 使用示例,展示了如何在 Node.js 中使用 EJS 渲染动态 HTML 页面。
const express = require('express');
const app = express();
app.set('view engine', 'ejs');
app.get('/', (req, res) => {
const data = {
title: 'EJS Example',
message: 'Welcome to EJS!',
items: ['Apple', 'Banana', 'Cherry']
};
res.render('index', data);
});
const port = 3000;
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
对应的 index.ejs
文件内容如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><%= title %></title>
</head>
<body>
<h1><%= message %></h1>
<ul>
<% for (var i = 0; i < items.length; i++) { %>
<li><%= items[i] %></li>
<% } %>
</ul>
</body>
</html>
- 定义模板:创建包含 EJS 语法的 HTML 文件。
- 准备数据:在服务器端准备要传递给模板的数据。
- 渲染模板:使用 EJS 引擎将数据和模板结合,生成最终的 HTML 内容。
- 返回响应:将生成的 HTML 内容返回给客户端。
EJS 是一个功能强大且易于使用的模板引擎,适合在 Node.js 项目中动态生成 HTML 页面。
Axios 是一个基于 Promise 的 HTTP 客户端,适用于浏览器和 Node.js 环境。它的设计目标是简化 HTTP 请求的发送过程,为开发者提供一个强大且易用的工具来处理网络请求。