Express 框架的安装
从零开始用 Node.js 实现一个微博系统,功能包括路由控制、页面模板、数据库访问、用户注册、登录、用户会话等内容。
- Express 框架、
- MVC 设计模式、
- ejs 模板引擎
- MongoDB 数据库
MVC(Model-View-Controller,模型视图控制器)是一种软件的设计模式
- 模型是对象及其数据结构的实现,通常包含数据库操作。
- 视图表示用户界面,在网站中通常就是 HTML 的组织结构。
- 控制器用于处理用户请求和数据流、复杂模型,将输出传递给视图
一.Express 框架 (http://expressjs.com/)
- 1.路由控制;
- 2.模板解析支持;
- 3.动态视图;
- 4.用户会话;
- 5.CSRF 保护;
- 6.静态文件服务;
- 7.错误控制器;
- 8.访问日志;
- 9.缓存;
- 10.插件支持。
1.全局安装 Express
$ npm install -g express
2.最新express4.0版本中将命令工具分家出来了(项目地址:https://github.com/expressjs/generator),所以我们还需要安装一个命令工具,命令如下:
$ npm install -g express-generator
3.查看版本
$ express --version
二.建立工程
1.在NodeJS指南中利用以下命令建立网站的基本结构:
$ express -e microblog
(模板引擎是jade) 执行命令后ejs模板引擎就安装好了
但是express3以上的版本把layout默认给取消了,所以现在在views文件夹下并没有生成layout.ejs。然后改成include引入
2.运行完这个命令,继续运行,然后进入microblog文件夹,安装npm
$ cd microblog && npm install
3.include引入方法
如头部views/layoutTop.ejs
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<link rel='stylesheet' href='/stylesheets/reset.css' />
<link rel='stylesheet' href='/stylesheets/main.css' />
<link rel="stylesheet" href="/stylesheets/bootstrap.css">
<style type="text/css">
body {
padding-top: 60px;
padding-bottom: 40px;
}
</style>
<link href="/stylesheets/bootstrap-responsive.css" rel="stylesheet">
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="/">Microblog</a>
<div class="nav-collapse">
<ul class="nav">
<li class="active"><a href="/">首页</a></li>
<% if (!user) { %>
<li><a href="/login">登入</a></li>
<li><a href="/reg">注册</a></li>
<% } else { %>
<li><a href="/logout">登出</a></li>
<% } %>
</ul>
</div>
</div>
</div>
</div>
底部views/layoutBottom.ejs
</body>
<script src="/javascripts/jquery-1.9.1.min.js"></script>
<script src="/javascripts/bootstrap.js"></script>
</html>
在views/index.ejs页面中include引用入公共部分
<% include layoutTop %>
<p>首页</p>
<% include layoutBottom %>
4.执行完express -e microblog 命令后, 项目生成,当前目录下出现了子目录 microblog,并且产生了一些文件:
create : microblog
create : microblog/package.json
create : microblog/app.js
create : microblog/routes
create : microblog/routes/index.js
create : microblog/routes/users.js
create : microblog/public
create : microblog/views
create : microblog/views/index.jade
create : microblog/views/layout.jade
create : microblog/views/error.jade
create : microblog/bin
create : microblog/bin/www
create : microblog/public/javascripts
create : microblog/public/images
create : microblog/public/stylesheets
create : microblog/public/stylesheets/style.css
5.用 Express 实现的网站实际上就是一个 Node.js 程序,因此可以直接运行。我们运行 node app.js, 看到 Express server listening on port 3000 in development mode。
输入地址 http://localhost:3000, 你就可以看到一个简单的 Welcome to Express 页面了。
6.开发时使用supervisor监听刷新修改
$ supervisor bin/www
7.退出监听:
ctrl + c
Express 框架的安装的更多相关文章
- Node.js Express 框架
Node.js Express 框架 Express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP ...
- node.js之express框架
之前学习过node.js接触过express框架,最近为了编写一个mock server正好用到了express.下面正好就跟大家介绍一下关于express.今天的内容主要围绕这么几个方面? expr ...
- express框架以及配置项
以上命令会将 Express 框架安装在当前目录的 node_modules 目录中, node_modules 目录下会自动创建 express 目录.以下几个重要的模块是需要与 express 框 ...
- nodejs基础 -- express框架
Node.js Express 框架 Express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP ...
- Node.js:Express 框架
Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具.使用 Express 可以快速地搭建一个完整功能的网站 ...
- Vue nodejs商城项目-搭建express框架环境
1.express-project 搭建express框架环境 安装express generator生成器 通过生成器自动创建项目 配置分析 安装 cnpm i -g express-generat ...
- Node.js Express 框架 Express
Express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具. 使用 Express 可以快速 ...
- 44.Node.js Express 框架--web框架
转自:http://www.runoob.com/nodejs/nodejs-express-framework.html Express 简介 Express 是一个简洁而灵活的 node.js W ...
- Win8.1 安装Express 框架
1.安装Windows Node.js客户端 2.安装Express框架 我本机是Win8.1的,使用命令npm install -g express安装Express,安装完成后显示一些安装明细,刚 ...
随机推荐
- IE6、IE7、IE8、Firefox兼容性
整理关于IE6.IE7.IE8.Firefox兼容性CSS HACK问题 1.区别IE和非IE浏览器CSS HACK代码 #divcss5{background:blue; /*非IE 背景藍色*/b ...
- cause: java.lang.IllegalStateException: Serialized class com.taotao.pojo.TbItem must implement java.io.Serializable
HTTP Status 500 - Request processing failed; nested exception is com.alibaba.dubbo.rpc.RpcException: ...
- Juint测试
添加"Juint测试"组件: 之后不用写在main方法里面便可以直接测试:
- 自然语言交流系统 phxnet团队 创新实训 个人博客 (二)
因为项目用的到条件编译,遂专门记载: 众所周知在C和CPP中可以通过预处理语句来实现条件编译,但是在java中没有预处理语句,我们该如何实现条件编译呢? 这是一个简单的demo public clas ...
- 关于用Spine制作骨骼动画的步骤
步骤: 1.打开spine. 2.新建一个空项目. 3.点右边Tree下的Images模块,导入在自己的切片素材和原整图. 4.把原整图拖到场景中,点右下角Color改变原图的颜色,方便后面对照. 5 ...
- 第二百九十九节,python操作redis缓存-SortSet有序集合类型,可以理解为有序列表
python操作redis缓存-SortSet有序集合类型,可以理解为有序列表 有序集合,在集合的基础上,为每元素排序:元素的排序需要根据另外一个值来进行比较,所以,对于有序集合,每一个元素有两个值, ...
- e649. 处理焦点改变事件
component.addFocusListener(new MyFocusListener()); public class MyFocusListener extends FocusAdapter ...
- bootstrap -- css -- 按钮
本文中提到的按钮样式,适用于:<a>, <button>, 或 <input> 元素上 但最好在 <button> 元素上使用按钮 class,避免跨浏 ...
- myslq的索引类型为MyISAM和BDB的表:复合索引下的自增长
本文源自:http://www.himigame.com/mysql/781.html 3.6.9. 使用AUTO_INCREMENT 可以通过AUTO_INCREMENT属性为新的行产生唯一的标识: ...
- 文本处理三剑客之AWK的用法
1.awk命令简介: awk是一种可以处理数据.产生格式化报表的语言,功能十分强大. awk的工作方式是读取数据,将每一行数据视为一条记录(record)每笔记录以字段分隔符分成若干字段,然后输出各个 ...