express 4.x 模板引擎与express.static
前提:要在express中使用模块引擎需要将要使用的模板引擎安装在本项目,当然,express也是要安装的。在下面实例中,我使用的模板引擎是pug(一起叫做jade)
我的目录结构如下:

根目录为static,根目录下的public文件夹,是静态文件(如图片文件,css文件,js文件de)根目录。根目录下的view是模板文件的根目录。根目录中的app.js是启动文件,
代码如下:
//引入必要的模块
//express.static是express 4.0中唯一的内置中间件,不需要额外引入
var express = require('express'); var app = express(); //将模板引擎设置为pug,也可以设置为其他的,在这里我已经安装了pug
app.set('view engine','pug'); //设置模板文件存放的目录,我将所以的模板文件存在在view文件夹
//它的意思是将模板文件放在与当前文件相同目录级的view文件夹中
app.set('views','view'); //将express.static作为一个中间件
//它的意思是在public中去加载静态文件,public位于与当前文件相同目录级
app.use(express.static('public')); app.get('/',function(req,res){
//渲染view文件夹中index.pug模板,由于前面已经设置了模板引擎为pug,所以这里可以不加后缀名
res.render('index');
});
app.listen(3000,function(){
console.log('reading');
});
index.pug文件的代码如下
doctype html
html
head(lang='en')
title index
meta(charset='utf-8')
//- 由于在app.js中将express.static()的第一个参数设置为了public,
//- 所以会在public中去找css/test/css,就算写成./../css/test.css等,也是
//- 在public中去找css/test.css,不管在css/test.css前加多少个点,req.url都是css/test.css
link(type='text/css',rel='stylesheet',href='css/test.css')
body
| index
script(type='text/javascript',src='js/index.js')
express 4.x 模板引擎与express.static的更多相关文章
- Express ( MiddleWare/中间件 路由 在 Express 中使用模板引擎 常用API
A fast, un-opinionated, minimalist web framework for Node.js applications. In general, prefer simply ...
- express中ejs模板引擎
1.在 app.js 中通过以下两个语句设置了 引擎类型 和页面模板的位置: app.set('views', __dirname + '/views'); app.set('view engine' ...
- nodejs学习(二) ---- express中使用模板引擎jade
系列教程,上一节教程 express+nodejs快速创建一个项目 在创建一个项目后,views目录下的文件后缀为 .jade . 打开 index.jade,具体内容如下图(忽略 header.j ...
- express使用ejs模板引擎渲染html文件
小场景小知识点. 在使用express过程中,按照官网教程,利用express生成器很容易初始化express项目模板. 那么初始化项目之后应该如何使用ejs作为模板引擎呢?如下 // 注释掉默认生成 ...
- express 使用art-template模板引擎
下载express-art-template art-template - app.js中配置 - 注册一个模板引擎 - `app.engine('.html',express-art-templat ...
- Express使用art-template模板引擎
第一步:安装 npm install --save art-template npm install --save express-art-template 第二步:指定.html使用的解析引擎(官方 ...
- Express开发实例(2) —— Jade模板引擎
前一篇通过helloworld,简单介绍了Express中的开发,本篇继续深入的学习express的模板. 关于Jade的用法,网上有很多,本篇参考:Jade语法 安装相关模块 在实验代码前,应该先安 ...
- 【转】在Express项目中使用Handlebars模板引擎
原文:http://fraserxu.me/2013/09/12/Using-Handlebarsjs-with-Expressjs/ 最近在用Expressjs做一个项目,前后端都用它来完成.自己之 ...
- Express:模板引擎深入研究
深入源码 首先,看下express模板默认配置. view:模板引擎模块,对应 require('./view'),结合 res.render(name) 更好了解些.下面会看下 view 模块. v ...
随机推荐
- webform 页面传值的方法总结
ASP.NET页面之间传递值的几种方式 页面传值是学习asp.net初期都会面临的一个问题,总的来说有页面传值.存储对象传值.ajax.类.model.表单等.但是一般来说,常用的较简单有Quer ...
- 剑指offer系列31-----二叉树的下一个节点
[题目]给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回. 注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. package com.exe7.offer; /** ...
- (转)用JQuery实现Fix表头表格
本文转载自:http://www.cnblogs.com/evlon/archive/2009/06/12/1502239.html 我的技术要点: 1.用两个表,其中一个是表头,另一个是表格做表体 ...
- python使用random函数生成随机数
python使用random函数来生成随机数,常用的方法有: import random #生成0-1之间的数(不包括0和1) random.random() #生成1-5之间的随机整数(包括1和5) ...
- SVN分支的合并和同步
使用svn几年了,一直对分支和合并敬而远之,一来是因为分支的管理不该我操心,二来即使涉及到分支的管理,也不敢贸然使用合并功能,生怕合并出了问题对团队造成不良影响,最主要的原因是,自己对分支的目的和合并 ...
- 109. Convert Sorted List to Binary Search Tree
Given a singly linked list where elements are sorted in ascending order, convert it to a height bala ...
- 尽量采用as操作符而不是旧式C风格做强制类型转换
http://www.cnblogs.com/JiangSoney/archive/2009/08/07/1541488.html MSDN: https://msdn.microsoft.com/z ...
- BestCoder HDU 5750 Dertouzos
Dertouzos 题意: 有中文,不说. 题解: 我看了别人的题解,还有个地方没懂, 为什么是 if(d%prime[i]==0) break; ? 代码: #include <bits/st ...
- 【转】C++ 单例模式
http://blog.csdn.net/hackbuteer1/article/details/7460019 单例的一般实现比较简单,下面是代码和UML图.由于构造函数是私有的,因此无法通过构造函 ...
- dos查看端口
C:\Documents and Settings\Administrator>netstat -an | findstr "22" TCP 192.168.16.2 ...