Node.js 入门笔记(2) - swig模板
2017-12-12 15:37
597 查看
用express创建的Nodejs项目缺省使用jade模板,最后决定采用swig模板,类似jinja的模板。
1. 安装
npm install swig --save
2. 参照error.jade、index.jade和layout.ade生成error.html、index.html和lyout.html三个文件
1)layout.html定义了两个block : 一个title、一个content
3)error.html 扩展(extends)自layout.html
{% extends 'layout.html' %}
{% block title %}index {{ title }} {%endblock%}
{% block content %}
<h1>{{ message }}</h1>
<h2>{{ error.status }}</h2>
<pre>{{ error.stack }}</pre>
{% endblock %}4)修改app.js
增加
var swig = require('swig');
增加
swig.setDefaults({
cache: false
});
注释
//app.set('view engine', 'jade');
增加
app.set('view engine', 'html');
app.engine('html', swig.renderFile);
修改
res.render('error');
为
res.render('error',{ title: 'Express & swig'});
5)修改/routes/index.js
找到res.render('index' 将其修改为
res.render('index', {
title: 'Express & swig',
content: 'This is a demo of swig.'
});
3. 运行效果
nmp start 运行,通过浏览器看效果
ok, express与swig已配合运行。
1. 安装
npm install swig --save
2. 参照error.jade、index.jade和layout.ade生成error.html、index.html和lyout.html三个文件
1)layout.html定义了两个block : 一个title、一个content
<!DOCTYPE html> <html> <head> <title>{% block title %}{% endblock %}</title> <link href='/stylesheets/style.css' real='stylesheet'> </head> <body> {% block content %}{% endblock %} </body> </html>2)index.html 扩展(extends)自layout.html,
{% extends 'layout.html' %} {% block title %}index {{ title }} {%endblock%} {% block content %} <p> This is a swig template engine demo. </p> {% endblock %}
3)error.html 扩展(extends)自layout.html
{% extends 'layout.html' %}
{% block title %}index {{ title }} {%endblock%}
{% block content %}
<h1>{{ message }}</h1>
<h2>{{ error.status }}</h2>
<pre>{{ error.stack }}</pre>
{% endblock %}4)修改app.js
增加
var swig = require('swig');
增加
swig.setDefaults({
cache: false
});
注释
//app.set('view engine', 'jade');
增加
app.set('view engine', 'html');
app.engine('html', swig.renderFile);
修改
res.render('error');
为
res.render('error',{ title: 'Express & swig'});
5)修改/routes/index.js
找到res.render('index' 将其修改为
res.render('index', {
title: 'Express & swig',
content: 'This is a demo of swig.'
});
3. 运行效果
nmp start 运行,通过浏览器看效果
ok, express与swig已配合运行。
相关文章推荐
- Node.js入门笔记(5):案例两则
- Node.js 入门笔记(5) - child_process
- Node.js入门学习笔记(二)
- Node.js 笔记二:入门及GeoNode.js GIS相关库
- 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记
- 创业笔记-Node.js入门之基于事件驱动的回调
- Node.js入门笔记(6):web开发方法
- Node.js模板引擎: Jade入门
- Node.js 入门笔记(1) - 基本环境
- node.js学习笔记(3)_极客学院_服务器入门
- Node.js入门学习笔记-IDE选择/配置之WebStorm(windows)
- 创业笔记-Node.js入门之阻塞与非阻塞
- Node.js 入门 笔记
- node入门笔记:使用node.js搭建一个简单的服务
- Node.js入门学习笔记-IDE选择/配置之WebStorm(windows)
- Node.js入门笔记
- Node.js笔记(六)不使用页面模板渲染界面
- Node.js学习笔记【1】入门(服务器JS、函数式编程、阻塞与非阻塞、回调、事件、内部和外部模块)
- node.js中EJS 模板快速入门教程
- Node.js入门学习笔记-IDE选择/配置之WebStorm(windows)