Node.js项目目录介绍
新建的项目结构应该是这样
bin:项目的启动文件,也可以放其他脚本。
node_modules:用来存放项目的依赖库。
public:用来存放静态文件(css,js,img)。
routes:路由控制器。
views:视图目录(相当于MVC中的V)。
app.js:项目入口及程序启动文件。
package.json:包描述文件及开发者信息。
-----------------------------------------------其他,自己创建使用------------------------------
models:数据模型(相当于MVC中的M)。
controllers:控制器,对请求的操作(相当于MVC中的C)。
tools:工具库。
config:配置目录。
test:测试目录。
README.md:项目说明文件。
app.js文件简单说明及设置app.js文件为启动文件。
//模块依赖
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var routes = require('./routes/index');
var users = require('./routes/users');
//添加,导入http模块
var http=require('http');
var app = express();
//设置端口号
app.set('port', process.env.PORT || 3000);
//视图引擎设置
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
//加载环境变量
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
//加载路由
app.use('/', routes);
app.use('/users', users);
//启动及端口
http.createServer(app).listen(app.get('port'),
function(){
console.log('Express server listening on port ' + app.get('port'));
});
//加载错误处理解决办法
app.use(function(req, res, next) {
var err = new Error('Not Found');
err.status = 404;
next(err);
});
if (app.get('env') === 'development') {
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: err
});
});
}
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: {}
});
});
//导出app对象
module.exports = app;
转载于:https://www.cnblogs.com/luoguixin/p/6120391.html
Node.js项目目录介绍相关推荐
- Node.js: NPM 使用介绍
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...
- 带你开发一个完整的 node.js 项目
「他们根本不知道,现在的电商大促有多么依赖 Node.js」任职阿里的架构师朋友这么说. 说真的,我倒并不意外.作为一个定位明确的高性能 Web 服务器,Node.js 非常火热,几乎霸占了前端生态. ...
- 部署Node.js项目(CentOS)
原文链接 部署Node.js项目(CentOS) 驻云科技 2017-05-11 17:46:43 浏览334 评论1 发表于: 阿里云服务 >> 最佳实践 云栖社区 linux ...
- 读《Node.js项目实践:构建可扩展的Web应用》 ——引编程慢慢变成系统化的“砌砖活”...
读<Node.js项目实践:构建可扩展的Web应用> --引编程慢慢变成系统化的"砌砖活" 眼里的Node.JS 初初接触node是一年前的事,那时候年少不更事.还在纠 ...
- Node.JS项目实战网盘系统-李游Leo-专题视频课程
Node.JS项目实战网盘系统-110人已学习 课程介绍 Node.JS是一套使用JavaScript语言的后台.它执行Javascript的速度非常快,性能非常好.是近几年来火的公司 ...
- Node.js项目实践:构建可扩展的Web应用
2019独角兽企业重金招聘Python工程师标准>>> Node.js项目实践:构建可扩展的Web应用 <Node.js项目实践:构建可扩展的Web应用>用专业的讲解方式 ...
- WebStorm中Node.js项目配置教程(1)——创建项目
Node.js绝对是一个web开发的热点话题,作为web神器的WebStorm也是开发Node.js的佼佼者. 接下来就Node.js项目在WebStorm的配置操作就行详细的讲解,首先是创建项目.两 ...
- 有没有办法为Node.js项目自动构建package.json文件
本文翻译自:Is there a way to automatically build the package.json file for Node.js projects Is package.js ...
- 白鹭[egret]项目目录介绍)
白鹭[egret]项目目录介绍 前言 一.游戏项目目录 1. egretProperties.json说明 二.使用步骤 1.引入库 2.读入数据 需要免费游戏源码的请微信搜索/扫码下方小程序 扫描下 ...
最新文章
- 为什么我抛弃了 Ubuntu?
- 全链路跟踪系统设计与实践(转载)
- 如何禁止用户名,密码自动填充
- 将 iOS 应用的体积控制在 20MB 以内对于其下载量有很明显的影响吗?
- GPS基站架设完整操作流程
- 长大了Java! 提出Java桌面版
- html5自动把某个层放在屏幕底部,告诉你一个将 footer 保持在底部的最好方法
- python3 正则表达式 嵌套表格_python 正则表达式处理表格
- Leetcode题目:Merge Sorted Array
- 管理者你是否在让你的员工瞎忙
- 【Echarts】堆积柱状图
- QQ微信可以上网,但是浏览器上不了网怎么办?
- 北京最最最牛的IT公司都在这了 。。。
- 为什么要来学习算法?写在英雄的5月集训月末
- IT男最新躺枪:武汉恋爱培训班教搭讪女孩技巧 学员多为IT男
- 签电子合同的流程是怎样的
- 短信推广的规则,你知道多少?
- 12星座的出生年月日性格_12星座的出生年月以及性格分析 复制的也可以
- 防灾科技学院图书馆大数据分析,2018读书报告丨来看一下谁是全年的阅读之星?
- 2008年中国富豪榜今日发布,以下为富豪榜101-200名