【NodeJS】02.让我们开始接触已经开发好的模块: Express + Jade

【先吐槽】

昨天把iOS刷到了8,结果WhatsAPP死活都用不了了,我又只好默默的刷回来。。。。

因为要去美国工作的事,从年初就开始各种忙,已经很久木有旅游了,整个人都不好了!


【你够了!开始吧】

1. Express框架

Express是一个为Node做的网页应用框架。这个很实用很基础的框架,是非常好的学习WebApp开发的起点。具体可以查看这里

安装Express非常方便,可以使用

$ npm install express

$ npm install express -g

安装,上面的会装在你使用这个命令的目录下,只能被你当年的工程使用。后面的会装在共享node-modules的目录下 (e.g: C:\ADMININSTRATOR\AppData\Roaming\npm\node_modules),这样所有的工程都可以使用。



2. 让我们开始一个最简单的Express Project吧

这里让我们偷个懒,直接使用express所提供的框架。首先你需要安装express-generator:

$ npm install -g express-generator

然后打开命令行,到你希望使用这个例子的目录下,然后使用一下命令

$ express example
这样,在你的目录下就生成了一些文件和文件夹,像这样

现在在命令行中换到此目录,输入

$ cd example
$ npm install

 

此时你的命令行出会出现一系列需要你安装的模块。装好以后你可以使用

$ npm start

来开始这个App。在浏览器中打开 http://localhost:3000 你就可以看到。

3. Express源代码分析

我们首先打开app.js文件。这面涵盖了最主要的逻辑。让我们来分析一下为什么我们会看到这个页面

var routes = require('./routes/index');//导入index.js
var users = require('./routes/users');//导入users.js

app.set('views', path.join(__dirname, 'views'));//设置view的文件在views文件夹中
app.set('view engine', 'jade');//使用jade框架,这是一个定义用户界面的模块

</span><span style="font-family:Microsoft YaHei;">app.use('/', routes);//在根目录下使用index.js的内容
app.use('/users', users); //在/users目录下使用user.js的内容</span>

首先我们分析route下的index.js文件,那么里面是什么呢?我们打开可以发现这个文件里的全部内容

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res) {
  res.render('index', { title: 'Express' });
});

module.exports = router;
</span>

它的意思就是说,在HTTP get 服务器"/"(根目录)的情况下,在页面上渲染index.jade (这个文件在views目录下,由app.js文件中设置可以得知)。那我们继续看这个index.jade代码:

extends layout

block content
  h1= title
  p Welcome to #{title}
</span>

现在可以懂了吧,这里已经定义了页面要显示的东西,从index.js中我们拿到title='Express‘,所以页面上显示了'Welcome to Express'。

现在你能知道为什么你去http://localhost:3000/users 里面会显示"respond with a resource"字符了吗?



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值