express - ejs使用介绍
http://blog.sina.com.cn/s/blog_ad0672d60101l2ml.html
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') -%>
<h1>I am the
<%=what%>
template</h1>
<% block('header',
"<p>I'm in the
header.</p>")
-%>
<% block('footer',
"<p>I'm in the
footer.</p>")
-%>
//boilerplate.ejs
<!DOCTYPE html>
<html>
<head>
<title>It's
<%=who%></title>
<%-scripts%>
<%-stylesheets%>
</head>
<body>
<header>
<%-blocks.header%>
</header>
<section>
<%-body -%>
</section>
<footer>
<%-blocks.footer%>
</footer>
</body>
</html>
//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);
结果
<!DOCTYPE html>
<html>
<head>
<title>It's
me</title>
<script
src="foo.js"></script>
<link rel="stylesheet" href="foo.css"
/>
</head>
<body>
<header>
<p>I'm in the
header.</p>
</header>
<section>
<h1>I am the best
template</h1>
</section>
<footer>
<p>I'm in the
footer.</p>
</footer>
</body>
</html>
express - ejs使用介绍的更多相关文章
- nodejs+express+ejs+mongoose实例
nodejs+express+ejs+mongoose实例 nodejs学得异常痛苦,在这里将学的东西做一番整理,算是自我安慰吧.根据网上todo示例,用express和mongoose重写了部分代码 ...
- nodejs创建express+ejs项目
很多同学跟着 node.js开发指南 学习用 express+ejs 创建项目的时候,却总是无法成功,如: 运行 以下命令去创建 express+ejs 创建项目 $ express -t ejs m ...
- 用nodejs,express,ejs,mongo,extjs实现了简单了网站后台管理系统
源代码下载地址:http://download.csdn.net/detail/guoyongrong/6498611 这个系统其实是出于学习nodejs的目的而改写的系统. 原来的系统前端使用了ex ...
- node+express+ejs搭建一个简单的"页面"
1.建立工程文件夹my_ejs. 2.首先利用npm install express和npm install ejs 下载这两个家伙.至于要不要设置成全局的,看习惯,我习惯性的下载到本项目中的文件夹中 ...
- nodejs下express+ejs环境搭建
nodejs下express+ejs环境搭建 分类: Nodejs 1.进入需要创建项目的目录 cd F:\nodeCode 2.创建一个带ejs模板工程,工程名为haha e ...
- 前端笔记之NodeJS(三)Express&ejs模板引擎&请求识别
一.Express框架 1.1基本使用 创建http服务器特别麻烦,express框架解决了这个的问题. Express在node界的地位,就相当于jQuery在DOM界的地位.jQuery的核心就是 ...
- node入门 express ejs
hello.js var express = require("express"); var app = express(); app.get("/hello" ...
- node.js + express(ejs) + mongodb(mongoose) 增删改实例
MongoDB 安装步骤总结: 1.解压目录到d盘 mongodb 2.安装目录的下新建文件mongo.config文件 ##store data here dbpath=D:\mongodb\dat ...
- Node - EJS模板应用(node+express+ejs)
准备工作: 工具:Webstorm 1. 新建一个文件夹为blogs(随意). 一个js文件app.js. 一个文件夹views,文件夹内一个index.ejs文件,文件夹asstes内style.c ...
随机推荐
- 0525Scram项目6.0
一.任务完成情况: 主界面基本完成,虽然界面看起来不是很美观,也比较简洁,但是这是我们一起商讨,各自找素材,找图片.还有一些动态的! 燃尽图: 二.界面演示: 三. 任务看板: 四.Spring1回顾 ...
- CodeForces #367 div2 C
题目链接: Hard problem 题意:每个字符串可以选择反转或者不反转,给出反转每个字符串的代价,问使最少的代价使得这个字符串序列成字典序. dp[i][j] = x : 第一维是第i个字符串, ...
- win server2008R2安装framework1.1后,在应用池中不能编辑选择framework1.1的解决办法
C:\Users\Administrator>mklink /d "c:/Windows/Microsoft.NET/Framework64/v1.1.4322" " ...
- bzoj 2809: [Apio2012]dispatching
#include<cstdio> #include<algorithm> #define M 1000005 using namespace std; long long an ...
- 如何重新安装DEDECMS织梦系统
重装的方法: 1.找到安装目录\install\index.php.bak文件,改名为index.php: 2.删除安装目录\install\install_lock文件:
- General Motors China
General Motors Co., one of the world's largest automakers, trace its root back to 1908. The General ...
- android技巧(一):如何方便知晓当前Activity?如何管理应用中的Activity?如何最佳的启动一个Activity?
1.如何方便知晓当前Activity? 可以不看代码根据当前界面就知道界面所在Activity的写法: 建立BaseActivity,继承自Activity,在BaseActivity的OnCreat ...
- C# winform应用程序仅能打开一个进程运行
判断程序是否已经运行,使程序只能运行一个实例: 方法1: //这种检测进程的名的方法,并不绝对有效.因为打开第一个实例后,将运行文件改名后,还是可以运行第二个实例. private static bo ...
- border-image(转载)
本文转自:http://www.zhangxinxu.com/wordpress/2010/01/css3-border-image%E8%AF%A6%E8%A7%A3%E3%80%81%E5%BA% ...
- Android-->猜拳小游戏
--> 简单的 页面跳转 和 点击事件 的实现... --> AndroidManifest.xml <?xml version="1.0" encoding=& ...