nodejs express项目结构分析(windows)
2016-07-21 20:11
666 查看
一、结构图
![](https://img-blog.csdn.net/20160721200645748?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
1、node_modules文件夹
这文件夹就是在创建完项目后,cd到项目目录执行npm
install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm
install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
二、项目内容介绍
1、app.set(name,value)
把名字为name的项的值设为value,用于设置参数。
2、app.use([path],
function)
用这个方法来使用中间件,因为express依赖于connect,有大量的中间件,可以通过app.use来使用;path参数可以不填,默认为'/' 。
3、app.get(name)
获取名为name的项的值。
4、路由文件index.js
这段表示,router.get表示通过get请求/时,响应后面的function处理,两个参数分别是request、response;
es.render表示调用模版引擎解析名字index的模板,传并传入了title做为参数;
参考:http://my.oschina.net/u/1416844/blog/483040
给大家推荐一个nodejs学习网站:
http://blog.fens.me/series-nodejs/
1、node_modules文件夹
这文件夹就是在创建完项目后,cd到项目目录执行npm
install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm
install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
二、项目内容介绍
1、app.set(name,value)
把名字为name的项的值设为value,用于设置参数。
//设定端口
app.set(
'port'
, process.env.PORT || 3000);
//设定视图路径主要清楚__dirname的意思就可以了,它是node.js中的全局变量,表示取当前执行文件的路径
app.set(
'views'
, path.join(__dirname,
'views'
));
//设定视图引擎模板,还可以设定其他模板,后续介绍
app.set(
'view engine'
,
'jade'
);
2、app.use([path],
function)
用这个方法来使用中间件,因为express依赖于connect,有大量的中间件,可以通过app.use来使用;path参数可以不填,默认为'/' 。
//这一句中可能要注意一下,express.static()是处理静态请求的,
//设置了public文件,public下所有文件都会以静态资料文件形式返回
//(如样式、脚本、图片素材等文件)
app.use(express.static(path.join(__dirname,
'public'
)));
//上面代码表示当用户使用/访问时,调用routes,即routes目录下的index.js文件,
//其中.js后缀省略,用/users访问时,调用routes目录下users.js文件
var
routes = require(
'./routes/index'
);
var
users = require(
'./routes/users'
);
app.use(
'/'
, routes);
app.use(
'/users'
, users);
3、app.get(name)
获取名为name的项的值。
(app.get(
'env'
) ===
'development'
) {
app.use(
function
(err, req, res, next) {
res.status(err.status|| 500);
res.render(
'error'
, {
message: err.message,
error: err
});
});
}
//表示如果是开发环境,处理error时会输出堆栈信息
4、路由文件index.js
var
express = require(
'express'
);
var
router = express.Router();
/* GET home page. */
router.get(
'/'
,
function
(req, res, next) {
res.render(
'index'
, { title:
'Express'
});
});
module.exports = router;
这段表示,router.get表示通过get请求/时,响应后面的function处理,两个参数分别是request、response;
es.render表示调用模版引擎解析名字index的模板,传并传入了title做为参数;
参考:http://my.oschina.net/u/1416844/blog/483040
给大家推荐一个nodejs学习网站:
http://blog.fens.me/series-nodejs/
相关文章推荐
- 如何安装SQL Server 2008 Management Studio Express
- 使用ruby部署工具mina快速部署nodejs应用教程
- Nodejs从有门道无门菜鸟起飞必看教程
- Google官方支持的NodeJS访问API,提供后台登录授权
- 浅谈Nodejs观察者模式
- nodejs教程之环境安装及运行
- nodejs中的fiber(纤程)库详解
- 基于NodeJS的前后端分离的思考与实践(五)多终端适配
- 基于NodeJS的前后端分离的思考与实践(二)模版探索
- 实例详解Nodejs 保存 payload 发送过来的文件
- 我的NodeJs学习小结(一)
- Node.js 应用跑得更快 10 个技巧
- nodejs中实现sleep功能实例
- Nodejs异步回调的优雅处理方法
- sql server 2008 r2 express 精简版与企业版的区别
- Windows系统下使用Sublime搭建nodejs环境
- nodejs实现获取某宝商品分类
- nodejs简单实现中英文翻译
- Node.js的Express框架使用上手指南
- Node.js插件的正确编写方式