Node.js模板引擎学习----ejs
环境:windows+node.js+express
一、安装ejs
打开cmd窗口,输入npm install ejs -g,等待下载安装完成。
二、使用
调用过程中使用路由机制和模板,路由请求地址为根目录,模板文件为home.ejs【注:模板引擎文件为.ejs文件】
1、新建js文件为index.js
写入如下代码:
varexpress=require("express"); varapp=express(); //设置渲染引擎 app.set("viewengine",'ejs'); //设置模板目录为当前index.js目录同级views目录下的模板 app.set("views",__dirname+"/views"); //设置使用当前目录 app.use(express.static(__dirname)); app.get("/",function(req,res){ //渲染页面并传值 res.render('home.ejs',{name:"kid"}); }); //监听3000端口 app.listen(3000);
2、新建home.js,目录为/views/home.ejs,输入如下内容:
<!DOCTYPEhtml> <html> <headlang="en"> <metacharset="UTF-8"> <title></title> </head> <body> <h2>Hello</h2> <!--<%%>:ejs的语法--> <p>Hi<%=name%></p> </body> </html>
3、在浏览器中输入localhost:3000回车
结果如下
4、在网页里面引入ejs,渲染
修改home.js
<!DOCTYPEhtml> <html> <headlang="en"> <metacharset="UTF-8"> <title></title> </head> <body> <h2>Hello</h2> <!--<%%>:ejs的语法--> <p>Hi<%=name%></p> <divid="new-temp"></div> </body> <!--========================================--> <scriptsrc="../ejs.min.js"></script> <script> vartmp="<p>Newtemplate</p>"; varnewTemplate=document.getElementById("new-temp"); newTemplate.innerHTML=ejs.render(tmp); </script> <!--========================================--> </html>
总结:由此可以扩展到动态创建或者获取res.render()方法的locals参数,然后渲染相同的页面,第4步,就像引入jquery一样对网页进行操作。
Node.js模板引擎学习----ejs的更多相关文章
- [js高手之路]Node.js模板引擎教程-jade速学与实战1
环境准备: 全局安装jade: npm install jade -g 初始化项目package.json: npm init --yes 安装完成之后,可以使用 jade --help 查看jade ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战1-基本用法
环境准备: 全局安装jade: npm install jade -g 初始化项目package.json: npm init --yes 安装完成之后,可以使用 jade --help 查看jade ...
- Node.js模板引擎的深入探讨
每次当我想用 node.js 来写一个 web 相关项目的时候.我总是会陷入无比的纠结.原因是 JavaScript 生态圈里的模板引擎实在太多了,但那么多却实在找不出一个接近完美的,所谓完美的概念就 ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战2-流程控制,转义与非转义
一.转义与非转义 jade模板文件代码: doctype html html head meta(charset='utf-8') title jade学习-by ghostwu body h3 转义 ...
- consolidate.js 一个Node.js 模板引擎的集合
consolidate是一个模板引擎的结合体.包括了常用的jade和ejs.通过配置我们就可以使用多种模板引擎. consolidate.js安装 npm install consolidate co ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战4-模板引用,继承,插件使用
一.block 模块复用 把需要复用的模块用block定义 block后面跟上模块的名字,引用一次block 内容就会被复用一次 编译之后的结果: 二,继承模板(extends) 在实际开发中,网站的 ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战3-mixin
强大的mixin mixin类似于函数的功能,可以达到模块复用的效果 mixin show: 定义一个类似函数的功能,名字叫show,里面的就是他的内容 +show: 调用show,每调用一次执行一次 ...
- JS模板引擎handlebars.js的简单使用
handlebars.js的使用 首先我们要明白handlebars.js是干什么用的,我们知道使用jsp很麻烦, 于是我们开始使用freemarker等模板引擎,但这个只是针对服务器端来解 析的,那 ...
- node.js 模板 ejs 转
node.js 模板引ejs. 搜了一把推荐用ejs的最多. 速度比对:http://www.cnblogs.com/fengmk2/archive/2011/04/28/2031971.html e ...
随机推荐
- Android 用SSL构建安全的Socket
SSL(安全套接层)是 Netscape公司在1994年开发的,最初用于WEB浏览器,为浏览器与服务器间的数据传递提供安全保障,提供了加密.来源认证和数据完整性的功能.现在SSL3.0得到了普遍的使用 ...
- html5和html的区别是什么(精问)
html5和html的区别是什么(精问) 一.总结 一句话总结:html5:简洁(文档生命,链接引入) 语义化(语义化标签) API(canvas,地理位置等) 一些标签(input新类型) 二. ...
- Power aware dynamic scheduling in multiprocessor system employing voltage islands
Minimizing the overall power conservation in a symmetric multiprocessor system disposed in a system- ...
- idea 搭建 SpringBoot 集成 mybatis
编译器:IDEA2018.2.3 环境:win10,jdk1.8,maven3.4 数据库:mysql 5.7 备注:截图较大,如果看不清,可以在图片上右键=>在新标签页中打开 查看高清大图 ...
- Qt实用技巧:界面切换使用Dialog全屏切换
需求 在做应用程序的过程中,需要使用界面切换,界面切换到下一个界面使用new一个界面并显示,如系统设置,相关信息展示等等. (注意:本技巧适用的条件是,主界面不需要相关的信号与槽做消息循环,因为主界面 ...
- Windows PowerShell 学习之——Cmdlet处理生命周期
这一次介绍一下Cmdlet处理过程的生命周期 总共分为六个部分 1.概述 2. 命令行输入绑定参数(parameters) 3. 开始指令处理 4. 接受管道输入绑定参数 5. 处理记录 6. 处理记 ...
- 【转】mysql的SQL_NO_CACHE(在查询时不使用缓存)和sql_cache用法
转自:http://www.169it.com/article/5994930453423417575.html 为了测试sql语句的效率,有时候要不用缓存来查询. 使用 SELECT SQL_NO_ ...
- ZOJ 3819 Average Score(数学 牡丹江游戏网站)
主题链接:problemId=5373">http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5373 Bob is ...
- google 搜索结果在新标签中打开
google->setting->search setting->Where results open->检查
- Android开发四大件
四大组件 Activity Activity是Android应用程序的界面,比如查看联系人.打电话.玩游戏的界面等一个应用程序通常包含多个Activity,即多个界面Activity通过布局管理各种V ...