玉模板引擎如何在节点。js中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
<>强安装玉强>
npm install -g 玉
执行上面的命令,全局安装。
<强>访客网站强>
第1步,在myprojects目录下创建一个访问者目录。
第2步,把下面的代码保存在包中。json文件里:
{ ,“name":,“Visitor" ,“version":,“0.0.0" ,“private":没错, ,“dependencies": { ,“express":“~ 4.13.1" ,“jade":“~ 1.11.0" ,} }
这个json文件描述了我们的访客网站的一些信息,最重要的部分是依赖。我们要使用表达和玉。
var express =,要求(& # 39;表达# 39;); var app =,表达(); var counter =, 0;//,view engine 设置 app.set(& # 39;观点# 39;,,& # 39;。/视图# 39;); app.set (& # 39; view 引擎# 39;,,& # 39;玉# 39;); app.engine(& # 39;玉# 39;,,需要(& # 39;玉# 39;).__express); app.get(& # 39;/& # 39;,,函数(点播,res), { ,计数器+ +;=,,app.locals.counter  counter.toString (); ,res.render(& # 39;指数# 39;,,{ip: req.ip}); }); app.listen (3000); 时间=app.locals.title “Welcome 用Visitor"; app.locals.counter =,“0”
app.js文件是我们网站的入口。
第4步,创建一个视图目录,在里面创建一个模板文件索引。玉,内容如下:
doctype html 超文本标记语言 ,头 title=, ,身体 ,h2=标题 ,p 你好,# {ip} ,p 你们# 39;re , #{柜台},访客。
第5步,在游客目录里执行“npm安装”,安装依赖。
第6步,在游客目录里执行“节点app.js”,启动网站。
最后呢,就可以在浏览器里访问了,地址栏里输入“http://localhost: 3000”即可,刷新几次,你可能会看到下面的界面:
app.set (& # 39; view 引擎# 39;,,& # 39;玉# 39;);
“视图”选项用来设置模板文件所在目录,游客的代码如下:
app.set(& # 39;观点# 39;,,& # 39;。/视图# 39;);
我在这里简单的使用了相对路径,更好的做法是使用路径模块,根据全局变量__dirname来拼接.__dirname指当前正在执行的脚本所在的目录,对我们的访客示例来讲,就是应用。js所在的那个目录。代码可能是这样的:
var path =,要求(& # 39;path & # 39;); path.join (__dirname, & # 39;观点# 39;);
表达默认会根据模板文件的扩展名来使用对应的引擎。对于*。玉文件,表达内部会调用下面的语句:
app.engine(& # 39;玉# 39;,,需要(& # 39;玉# 39;).__express);
所以,我们的应用。js,实际上也可以去掉这行代码,结果是一样的。
<强>本地对象强>
我们可以在模板文件里包含动态数据,这些动态数据来自应用程序。我们可以使用表达对象的当地人对象来存储本地变量。下面的代码就存储了标题和访问计数:
app.locals.title =,“Welcome 用Visitor"; app.locals.counter =,“0”
玉模板文件里可以直接访问表达对象的当地人对象的属性。我在app.js里设置的标题和计数器,在索引。玉模板文件引用了它们。