nodejs中express下ejs使用介绍

1.express中使用ejs

var express = require('express');//需要安装 express

var app = express();

app.set("view engine","ejs");//模版引擎设置为 ejs

2.文件组织

在express中使用ejs,文件组织遵循express。

.views-------放置动态模版

.public------放置静态网页

.layouts-----放置布局文件

3.基本语法

.<% code %>

无缓冲的条件语句元素

.<%= code %>

转义HTML,该code并且会打印出来

.<%- code %>

非转义的buffering,该code并且会打印出来

.<% include file %>

内嵌别的文件

.<% layout(file) -%>

指定布局文件

.<% script(file) -%>

包含js脚本文件

.<% stylesheet(file) -%>

包含css文件

.<% block(code, code) -%>

指定块内容

4.基本对象

.scripts

包含的脚本

.stylesheets

包含的css

.blocks

包含的块

5.例子

//index.ejs

<% layout('boilerplate') -%>

<% script('foo.js') -%>

<% stylesheet('foo.css') -%>

I am the <%=what%> template

<% block('header', "

I'm in the header.

") -%>

<% block('footer', "

I'm in the footer.

") -%>

//boilerplate.ejs

It's <%=who%>

<%-scripts%>

<%-stylesheets%>

<%-blocks.header%>

<%-body -%>

<%-blocks.footer%>

//app.js

var express = require('express')

, engine = require('ejs-locals')

, app = express();

// use ejs-locals for all ejs templates:

app.engine('ejs', engine);

app.set('views',__dirname + '/views');

app.set('view engine', 'ejs'); // so you can render('index')

// render 'index' into 'boilerplate':

app.get('/',function(req,res,next){

res.render('index', { what: 'best', who: 'me' });

});

app.listen(3000);

结果

It's me

I'm in the header.

I am the best template

I'm in the footer.

你可能感兴趣的:(nodejs中express下ejs使用介绍)