【js】ejs
什么是ejs
"E" 代表 "effective",即【高效】。EJS 是一套简单的模板语言,帮你利用普通的 JavaScript 代码生成 HTML 页面。EJS 没有如何组织内容的教条;也没有再造一套迭代和控制流语法;有的只是普通的 JavaScript 代码而已。
特点
- 快速编译与绘制输出
- 简洁的模板标签:<% %>
- 自定义分割符(例如:用 <? ?> 替换 <% %>)
- 引入模板片段
- 同时支持服务器端和浏览器 JS 环境
- JavaScript 中间结果静态缓存
- 模板静态缓存
- 兼容 Express 视图系统
ejs的使用
1、使用npm安装ejs
$ npm install ejs
2、新建index.ejs
index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title><%= title %></title> </head> <body> <%= index %> </body> </html>
3、引入ejs模块
const ejs = require('ejs');
4、渲染ejs
const http = require('http'); http.createServer((req, res) => { if (req.url === '/') { res.writeHead(200, { 'Content-Type': 'text/html' }); // 渲染文件 index.ejs ejs.renderFile('./views/index.ejs', { title: 'ejs-index', // 渲染的数据key: 对应到了ejs中的title index: '首页'}, // 渲染的数据key: 对应到了ejs中的index (err, data) => { if (err ) { console.log(err); } else { console.log(data); res.end(data); } }) } }).listen(3002);
5、koa使用ejs
配置koa-views
const koaViews = require('koa-views'); // 配置渲染文件路径 及文件后缀 app.use(koaViews('./views', { extension: 'ejs' })); // 响应路由渲染文件 router.get('/', async ctx => { await ctx.render('index', { title: 'ejs-index', // 渲染的数据key: 对应到了ejs中的title index: '首页'}, // 渲染的数据key: 对应到了ejs中的index }); });
6、语法
- <% :'脚本' 标签,用于流程控制,无输出
- %> :一般结束标签
- <%= :输出数据到模板(输出是转义 HTML 标签)
- <%- :输出非转义的数据到模板
相关资料:
作者:smile.轉角
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
欢迎关注我,一起进步!扫描下方二维码即可加我QQ

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通