nodeJs探究系列之起步构建
这个demo会持续更新,源码 去看看源码
最近在研究nodejs,由于有了php的底子,很多东西都比之前好理解了。先练习一个demo
var express = require('express') var app = express() var handlebars = require('express3-handlebars') // 模版引擎 .create({defaultLayout: 'main'}) app.engine('handlebars', handlebars.engine) // 设置使用handlebars引擎 app.set('view engine', 'handlebars') app.set('port', process.env.PORT || 3000) // 监听哪个端口 app.use(express.static(__dirname + '/public')) // 设置静态目录 var fortune = require('./lib/fortune') // 引入模块 app.get('/', function (req, res) { res.render('home') // 设置渲染模块。render是handlebars的语法,默认帮着添加上了res.type('text/plain')类型 }) app.get('/about', function (req, res) { res.render('about', {fortune: fortune.getFortune()}) // 将参数传递过去 }) app.use(function (req, res, next) { // 这里用的是use,中间件,在找不到的时候走这个 res.status(404) res.render('404') }) app.use(function (err, req, res, next) { // 这里也是use,第一个参数添加了err,服务器错误的时候在这里捕获 res.status(500) res.render('500') }) app.listen(app.get('port'), function () { // 这里设置监听,app.get('port')是获得当前选定的port console.log('listening' + app.get('port')) })
handlebars
这里是用的handlebars引擎,然后创建了默认模版'main',用app.engine('handlebars', handlebars.engine)设置引用这个引擎。关于handlebars引擎,另写一篇文章介绍。
配置形态文件目录
app.use(express.static(__dirname + '/public'))这个中间件设置静态目录,就是在根目录__dirname后面加上创建的文件夹public,然后访问静态文件直接按这个走了就。
传递参数
res.render('模版', {}) 后面的json为传递过去的参数,在页面里面直接调用<\blockquote>{{fortune}}<\/blockquote>即可
推荐文章