express 是 Node.js 应用最广泛的 web 框架,利用 express 可以实现很多的web应用;首先需要需要得到一个express。
新建一个文件夹叫lesson1,进去里面安装 express;
mkdir lesson1 && cd lesson1
npm install express
安装完成后,我们的 lesson1 目录下应该会出现一个 node_modules 文件夹;里面如果出现 express 文件夹则说明安装成功。
然后再来安装jade模板引擎;
npm install jade
node_modules 文件夹里面如果出现 jade 文件夹则说明安装成功。
或者 npm命令提供更清晰直观的显示:
npm list
在lesson1目录下面新建视图文件夹views,里面存放express所需要引用的视图文件;在views文件夹下面新建index.jade,写入代码:
doctype
html
head
meta(charset="utf-8")
meta(content="IE=edge",http-equiv="X-UA-Compatible")
title #{title}
body
h1 #{title}
新建一个 app.js 文件,写入代码:
// 引入 express 模块 var express = require('express') // 调用 express 实例 var app = express(); // 定义视图路径 app.set('views', './views'); // 定义视图文件模板引擎 app.set('view engine', 'jade'); app.get('/', function(req, res) { res.send('hello world') }); app.get('/list/:id', function(req, res) { res.send('这是列表页') }); app.get('/index/', function(req, res) { res.render('index', { title: '这是首页', }) }); // 监听端口 app.listen(3000, function() { console.log('app is listening at port 3000'); })
执行 node app.js
这时候我们的 app 就跑起来了,终端中会输出 app is listening at port 3000。这时我们打开浏览器,访问 http://localhost:3000/,会出现 Hello World。如果没有出现的话,肯定是上述哪一步弄错了,自己调试一下。
此时,再http://localhost:3000/后面加上index,可以看到我们模板文件已行可以获取到了;
补充知识:使用supervisor提高nodejs调试效率
在开发nodejs程序,调试的时候,无论你修改了代码的哪一部分,都需要重启服务才能生效。这是因为 Node.js 只有在第一次引用到某部份时才会去解析脚本文件,以后都会直接访问内存,避免重复载入。Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启 Node.js。
supervisor的安装也很简单:
直接用npm安装既可,键入命令: npm -g install supervisor
这里注意一点的就是,supervisor必须安装到全局,如果你不安装到全局,错误命令会提示你安装到全局。
如果不想安装到默认的全局,也可以自己修改全局路径到当前路径
npm config set prefix "路径"
安装完以后就可以用supervisor 来启动服务了。
supervisor app.js