博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Node js 嵌入式模板引擎 ejs 的使用
阅读量:6335 次
发布时间:2019-06-22

本文共 2341 字,大约阅读时间需要 7 分钟。

npmjs地址:

github在线测试:
中文文档:

基本使用

安装 ejs 模板引擎

npm install ejs --save

js 部分

const http = require("http");const fs   = require("fs");const ejs  = require("ejs");// 模拟数据let info = {    name : 'alex',    vip  : true,    hobby: [        'js', 'node', 'vue', 'ejs', 'express'    ]};// 创建http服务并监听端口http.createServer((request, response, next) => {    if (request.url === "/") {        // fs 读文件        fs.readFile(__dirname + '/index.html', (err, data)=>{            if (err) throw err;            // 渲染模板 并且给模板分配数据            let template = ejs.render(data.toString(), { title:'ejs模板引擎', user:info});            // 响应            response.end(template);        });    }}).listen(3000);

ejs 模板部分

    
<%= title %>
姓名: <%= user.name%> <% if (user.vip) { %>
vip <% } %>
爱好: <% user.hobby.forEach(item=>{ %>
<%= item %> <% }) %>

在 express 框架中使用 ejs 模板引擎

安装 express 框架

npm install express --save

express 中文文档:

配置 express 的模板引擎为 ejs

// 引入模块const app  = require("express")();const ejs  = require("ejs");// 设置模板存放的目录app.set('views', './view');// 设置模板文件的后缀app.engine('.html', ejs.__express);// 使用默认的模板引擎是可以省略// app.set('view engine', 'html');

在 express 框架中使用 ejs 模板引擎

js 部分

// 引入模块const app  = require("express")();const ejs  = require("ejs");// 监听端口app.listen(3000);// 设置模板存放的目录app.set('views', './view');// 设置模板文件的后缀app.engine('.html', ejs.__express);// 使用默认的模板引擎是可以省略// app.set('view engine', 'html');app.get("/", (request, response) => {    // render,渲染模板    // 此时会自动到 app.set('views', './view')    // 配置好的目录中去找    response.render("index.html",{        title: 'ejs template engine',        user: {            name: 'alex',            vip : true,            hobby: [ "javascript", "Java", "C", "C++" ],        },    });});

模板部分

    
<%= title %>
姓名: <%= user.name%> <% if (user.vip) { %>
vip <% } %>
爱好: <% user.hobby.forEach(item=>{ %>
<%= item %> <% }) %>

转载于:https://www.cnblogs.com/liaohui5/p/10581622.html

你可能感兴趣的文章
专访OneAPM创始人何晓阳:APM将是开发者必备服务
查看>>
又拍云创新CDN服务,同步提供1:1免费云存储
查看>>
C#和F#默认接口方法更新
查看>>
测试人员的GitHub
查看>>
Swift 集合的 reduce 操作
查看>>
无服务平台性能比较
查看>>
Electric Cloud推出用于DevOps的预测分析平台
查看>>
怀疑在软件测试中所起的作用
查看>>
Node.js和io.js将合并到Node基金会下
查看>>
腾讯云工业互联网助力平台发布 推动制造业“数字化”蝶变
查看>>
从Jira到GitHub,详解Spring Framework问题跟踪系统的迁移过程
查看>>
解读 2018之Go语言篇(下):明年有哪些值得期待?
查看>>
Envato不停机迁移边缘网络提供商
查看>>
遗传算法
查看>>
高品质软件工艺
查看>>
如何提升测试的价值体现
查看>>
如何迅速分析出系统CPU的瓶颈在哪里?
查看>>
40%创业公司用伪AI忽悠钱,欧洲被AI时代抛弃了吗?
查看>>
微软更新Azure Blockchain Workbench服务,提升基于联盟链的应用开发体验
查看>>
何时该用无服务器,何时该用Kubernetes?
查看>>