Node.js使用Express创建Web项目详细教程


Posted in Javascript onMarch 31, 2017

序:如果你还不知道Node.js是什么,那么你可以先看看这篇:Node.js 究竟是什么?或者任何关于它的介绍。

一、安装Node.js

1.进入Node.js官网下载并安装

Node.js使用Express创建Web项目详细教程

2.启动cmd输入命令查看node及npm版本

node -vnpm -v

Node.js使用Express创建Web项目详细教程

npm是node完成安装后自带的包管理器

二、安装Express

express是node平台下最常用的web应用开发框架

1.全局安装express

npm install -g express

Win7环境全局安装在C:\Users\Administrator\AppData\Roaming\npm\node_modules文件夹下

2.全局安装express命令行工具

npm install -g express-generator

在最新的4.x版本中,命令行工具已经被独立出来

3.查看express版本

express -V

Node.js使用Express创建Web项目详细教程 

4.更新已安装的express

npm update -g express

三、使用Express创建项目

1.创建项目

express APP_NAME

express默认以jade作为模板引擎,模板文件为.jade类型;jade的语法与html有较大差异,对缩进也是要求严格的

Node.js使用Express创建Web项目详细教程

2.以ejs作为模板引擎创建项目

express APP_NAME -e

在项目名称的后面添加 -e 那么创建出来的模板文件就是.ejs类型,语法是与html相同的

Node.js使用Express创建Web项目详细教程

3.将ejs文件改为html

若希望模板文件的后缀为.html(通常只是为了看着更舒服),那么在手动将.ejs换成.html后,还需要对app.js文件进行设置

var ejs = require('ejs');

app.engine('.html', ejs.__express);
app.set('view engine', 'html');  //app.set('view engine', 'ejs');

原文件:

Node.js使用Express创建Web项目详细教程

修改后:

Node.js使用Express创建Web项目详细教程

4.安装依赖包

进入项目文件夹,执行:

npm install

下载package.json中记录的所有依赖包到node_modules文件夹

注意:更多npm命令,请查看npm常用命令集合

四、启动服务

1.启动

npm start

监听bin/www文件,默认端口为3000,可在www文件中更改

Node.js使用Express创建Web项目详细教程

2.打开浏览器,输入localhost:3000

Node.js使用Express创建Web项目详细教程

3.自动重启服务

打开package.json可以看见,监听bin/www文件的命令是node

Node.js使用Express创建Web项目详细教程

使用node监听将会导致:每次修改代码后,需要手动重启服务,可以使用nodemon进行自动重启

npm install -g nodemon

同样可以使用下面的命令查看其版本

nodemon -v

将package.json文件中的代码修改为:

"start": "nodemon ./bin/www"

重新执行:

npm start

Node.js使用Express创建Web项目详细教程

接下来,就可以随心所欲的编码了...

Javascript 相关文章推荐
Prototype使用指南之selector.js
Jan 10 Javascript
JS辨别访问浏览器判断是android还是ios系统
Aug 19 Javascript
jQuery中replaceWith()方法用法实例
Dec 25 Javascript
js实现checkbox全选、不选与反选的方法
Feb 09 Javascript
jquery点击改变class并toggle的实现代码
May 15 Javascript
chrome浏览器如何断点调试异步加载的JS
Sep 05 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(三)
Sep 14 Javascript
Javascript for in的缺陷总结
Feb 03 Javascript
vue devtools的安装与使用教程
Aug 08 Javascript
JS div匀速移动动画与变速移动动画代码实例
Mar 26 Javascript
JavaScript oncopy事件用法实例解析
May 13 Javascript
Nuxt配置Element-UI按需引入的操作方法
Jul 06 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
Mar 31 #Javascript
JS解决移动web开发手机输入框弹出的问题
Mar 31 #Javascript
详解使用JS如何制作简单的ASCII图与单极图
Mar 31 #Javascript
Angularjs中使用指令绑定点击事件的方法
Mar 30 #Javascript
Angualrjs和bootstrap相结合实现数据表格table
Mar 30 #Javascript
微信小程序中顶部导航栏的实现代码
Mar 30 #Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
Mar 30 #Javascript
You might like
PHP常用正则表达式集锦
2014/08/17 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
2016/01/08 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
JQuery 获取和设置Select选项的代码
2010/02/07 Javascript
jQuery中ajax的post()方法用法实例
2014/12/26 Javascript
javascript获取当前鼠标坐标的方法
2015/01/10 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
javascript带回调函数的异步脚本载入方法实例分析
2015/07/02 Javascript
JS+CSS简单树形菜单实现方法
2015/09/12 Javascript
由浅入深讲解Javascript继承机制与simple-inheritance源码分析
2015/12/13 Javascript
实例讲解JavaScript中instanceof运算符的用法
2016/06/08 Javascript
jquery输入数字随机抽奖特效的简单实现代码
2016/06/10 Javascript
js 动态生成json对象、时时更新json对象的方法
2016/12/02 Javascript
深入浅析var,let,const的异同点
2018/08/07 Javascript
vue-i18n结合Element-ui的配置方法
2019/05/20 Javascript
JS中的算法与数据结构之集合(Set)实例详解
2019/08/20 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
[05:59]2018DOTA2国际邀请赛寻真——只为胜利的Secret
2018/08/13 DOTA
Python and、or以及and-or语法总结
2015/04/14 Python
python定时检查某个进程是否已经关闭的方法
2015/05/20 Python
全面了解Python环境配置及项目建立
2016/06/30 Python
Python并行分布式框架Celery详解
2018/10/15 Python
Python3中lambda表达式与函数式编程讲解
2019/01/14 Python
用python 实现在不确定行数情况下多行输入方法
2019/01/28 Python
python2.7使用plotly绘制本地散点图和折线图
2019/04/02 Python
wxPython实现分隔窗口
2019/11/19 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例
2020/03/16 Python
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
Hudson Jeans官网:高级精制牛仔裤
2018/11/28 全球购物
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
学习社交礼仪心得体会
2016/01/22 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书
企业内部管理控制:采购授权审批制度范本
2020/01/19 职场文书
MySQL实现字段分割一行转多行的示例代码
2022/07/07 MySQL
Python 避免字典和元组的多重嵌套问题
2022/07/15 Python