Express中使用模板引擎
发布时间:2020-12-16 08:15:43 所属栏目:百科 来源:网络整理
导读:在express中设置模板引擎。 定义模板引擎 varexpress=require(express);varapp=express();app.set(views,./app/views);//设置views的默认路径app.set(viewengine,ejs);//设置引擎扩展名app.engine(.ejs,require(ejs).__express);//注册ejs模板引擎 以上方法
在express中设置模板引擎。 定义模板引擎var express = require('express'); var app = express(); app.set('views','./app/views'); // 设置views的默认路径 app.set('view engine','ejs'); // 设置引擎扩展名 app.engine('.ejs',require('ejs').__express); // 注册ejs模板引擎 以上方法可以注册指定的ejs模板引擎。 当然,如果你想使用html后缀的文件,可以做以下修改,这样就可以支持了。 app.engine('.html',require('ejs').__express); app.set('view engine','html'); 添加变量我们可以使用app对象的locals属性来添加,比如: app.locals.name = 'App'; app.locals.age = 13; 这些变量会在render模板的时候填充到页面中去。 渲染模板并显示我们可以使用render方法来渲染页面,对应的api是, app.render(view,[locals],callback) view: 模板文件名 [locals]: 一个locals对象(即在app.locals中定义的locals对象) callback: 回调函数,在模板呈现后执行。第一个参数,err错误对象,第二个参数是 html,即呈现后的模板字符串。 1.直接调用app对象的render方法app.get('/',function(req,res) { res.render('index'); }); 当然,前面的locals,也可以通过render的第二个参数直接传入。 2.利用render的回调方法app.get('/',res) { res.render('index',function(err,html) { res.send(html); }); }); 同样的,像以下这样直接传入也是可以的。 app.render('/',{ name: 'aaa' },html){ // ...}); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |