简介
EJS 是一种简单、高效的模板语言,它可以将数据和模板合并生成 HTML 文档。EJS 是基于 JavaScript 的,易于学习和使用,并且适用于多种应用场景。
在本文中,我们将详细介绍如何使用 EJS 在前端开发中创建动态网页。
安装
首先,需要全局安装 ejs
:
npm install -g ejs
基本用法
创建 EJS 模板文件
首先,需要创建一个 EJS 模板文件,例如 index.ejs
。
-- -------------------- ---- ------- --------- ----- ----- ---------- ------ ----- ---------------- ---------- ----- ---------- ------- ------ --------- --- ---- -------- ------- -------
在这个模板文件中,使用 <%= %>
将数据嵌入到 HTML 中。例如,<%= title %>
将会被替换为变量 title
的值。
渲染模板文件
接下来,需要在 JavaScript 中渲染模板文件。首先,需要引入 ejs
模块。
const ejs = require('ejs');
然后,使用 ejs.render()
方法渲染模板文件。
-- -------------------- ---- ------- ----- -------- - ---------------------------- -------- ----- ---- - - ------ --- --------- ----- ------- -- ----- ---- - -------------------- ------ ------------------
在这个例子中,fs.readFileSync()
用于读取模板文件。然后,定义了一个包含 title
和 name
变量的数据对象 data
。最后,使用 ejs.render()
方法将模板和数据合并生成 HTML。
输出结果
最后一步是将渲染后的 HTML 输出到浏览器或保存到文件中。
res.send(html);
在这个例子中,使用 res.send()
方法将 HTML 发送给浏览器。
高级用法
控制流
EJS 支持多种控制流语句,例如 if
、for
和 while
。下面是一个使用 if
语句的示例。
<% if (user) { %> <h1>Hello <%= user.name %>!</h1> <% } else { %> <h1>Hello World!</h1> <% } %>
在这个例子中,如果 user
存在,则显示用户名称,否则显示 "Hello World!"。
包含
EJS 支持在一个模板文件中包含其他模板文件。下面是一个使用 include
的示例。
-- -------------------- ---- ------- --------- ----- ----- ---------- ------ ----- ---------------- ---------- ----- ---------- ------- ------ -- ------- ------------------- -- --------- --- ---- -------- -- ------- ------------------- -- ------- -------
在这个例子中,partials/header.ejs
和 partials/footer.ejs
是两个包含文件。使用 <% include %>
将它们嵌入到主模板中。
自定义分隔符
默认情况下,EJS 使用 <% %>
作为控制流语句的分隔符,使用 <%= %>
将数据嵌入到 HTML 中。但是,如果需要使用其他字符作为分隔符,可以通过设置 ejs.delimiter
属性来实现。
const ejs = require('ejs'); ejs.delimiter = '$';
在这个例子中,将分隔符设置为 $
。
结论
使用 EJS 可以轻松地创建动态网页,而不必手动编写大量的 HTML 代码。本文介绍了 EJS 的基本用法和高级用法,包
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/39594