NodeJs——入门必看攻略


Posted in NodeJs onJune 27, 2016

关于NPM:

npm 是 nodejs 的包管理和分发工具。它可以让 javascript 开发者能够更加轻松的共享代码和共用代码片段,并且通过 npm 管理你分享的代码也很方便快捷和简单。

一 NodeJs安装与NPM管理

安装

前往NodeJs官网,下载安装包直接安装。同时NodeJs默认包含NPM模块。后者需要更新到最新版本。-v 查看版本信息,有则安装成功。某些版本不支持读-v参数大小写敏感,如报错尝试大写-V.

node -v
v4.4.4
npm -v
2.15.1

更新npm模块

node install npm -g

-g 参数代表全局安装,windows下所有安装的模块文件一般存放在node安装目录下或C:\Users\Administrator\AppData\Roaming缓存目录下。
 去掉-g 本地安装,npm在当前目录下新建一个node_modules目录,所下载的模块存放在里面。

卸载

通过uninstall从node_modules目录下删除模块

#本地卸载
npm uninstall <name> 
#全局卸载
npm uninstall <name> -g

二 创建第一个NodeJs应用

使用express模块创建应用。

首先下载express模块

npm install -g express
express -V

同理,检查是否安装成功。还有两个参数:-e或--ejs;-J或--jshtml。含义:
-e, --ejs add ejs engine support 添加ejs模块引擎支撑

-J, --jshtml add jshtml engine support (defaults to jade) 添加jshtml模板引擎支撑

新版本express中不支持cmd命令行,所以上面express -V会报错: 不是内部或外部命令,需下载express-generator

npm install -g express-generator

然后可以全局使用express命令了,随便选择一个文件夹(F:\Project\Nodejs)下创建应用:

express hello_world

cd hello_world 进入项目

cd hello_world
# 查看目录结构
dir
#像这样
# 2016/06/26 14:43  <DIR>     .
# 2016/06/26 14:43  <DIR>     ..
# 2016/06/26 01:41       1,442 app.js
# 2016/06/26 01:41  <DIR>     bin
# 2016/06/26 01:41        331 package.json
# 2016/06/26 01:41  <DIR>     public
# 2016/06/26 01:41  <DIR>     routes
# 2016/06/26 01:41  <DIR>     views
#        2 个文件     1,773 字节
#        6 个目录 161,019,293,696 可用字节*

注意这里有一个package.json文件,里面dependencies属性指定了当前项目依赖的模块。启动之前,需要执行npm install下载他们:

npm install

如果没有package.json文件,这一步会报错:

npm ERR! install Couldn't read dependencies

npm ERR! Windows_NT 6.1.7601

可以通过npm ini 生成默认的。在这里,上面的express hello_world命令内部已经调用该命令,生成文件内容类似这样:

{
 "name": "hello_world",
 "version": "0.0.0",
 "private": true,
 "scripts": {
  "start": "node ./bin/www"
 },
 "dependencies": {
  "body-parser": "~1.15.1",
  "cookie-parser": "~1.4.3",
  "debug": "~2.2.0",
  "express": "~4.13.4",
  "jade": "~1.11.0",
  "morgan": "~1.7.0",
  "serve-favicon": "~2.3.0"
 }
}

也可以安装上面的模板,收到创建该package.json文件。值得一提的是,一个npm模块package.json文件包含的信息远比这里丰富。

等待依赖库下载完成。完成后多一个node_modules文件夹用于保存依赖库。

至此,当前应用准备工作完成。启动应用:

npm start

浏览器中输入127.0.0.1::3000(默认端口)访问

三 总结

个人经验,希望能给从零到创建一个nodeJs应用的同学提供参考。

以上就是小编为大家带来的NodeJs——入门必看攻略全部内容了,希望大家多多支持三水点靠木~

NodeJs 相关文章推荐
提高NodeJS中SSL服务的性能
Jul 15 NodeJs
nodejs中实现阻塞实例
Mar 24 NodeJs
ubuntu下安装nodejs以及升级的办法
May 08 NodeJs
NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法
Jul 26 NodeJs
nodejs进阶(6)—连接MySQL数据库示例
Jan 07 NodeJs
详解nodejs微信公众号开发——3.封装消息响应模块
Apr 10 NodeJs
nodejs简单实现TCP服务器端和客户端的聊天功能示例
Jan 04 NodeJs
NodeJs项目中关闭ESLint的方法
Aug 09 NodeJs
nodejs读取本地中文json文件出现乱码解决方法
Oct 10 NodeJs
NodeJS模块与ES6模块系统语法及注意点详解
Jan 04 NodeJs
nodejs分离html文件里面的js和css的方法
Apr 09 NodeJs
nodejs中实现用户注册路由功能
May 20 NodeJs
浅析Nodejs npm常用命令
Jun 14 #NodeJs
nodejs 的 session 简单使用
Jun 06 #NodeJs
详解nodejs与javascript中的aes加密
May 22 #NodeJs
NodeJS连接MongoDB数据库时报错的快速解决方法
May 13 #NodeJs
Nodejs获取网络数据并生成Excel表格
Mar 31 #NodeJs
Nodejs学习item【入门手上】
May 05 #NodeJs
NodeJS的Promise的用法解析
May 05 #NodeJs
You might like
php fckeditor 调用的函数
2009/06/21 PHP
Laravel 5框架学习之Laravel入门和新建项目
2015/04/07 PHP
浅谈PHP的反射API
2017/02/26 PHP
laravel多条件查询方法(and,or嵌套查询)
2019/10/09 PHP
PHP Web表单生成器案例分析
2020/06/02 PHP
PHP7变量处理机制修改
2021/03/09 PHP
Aster vs KG BO3 第二场2.18
2021/03/10 DOTA
用js实现的一个Flash滚动轮换显示图片代码生成器
2007/03/14 Javascript
jquery右下角弹出提示框示例代码
2013/10/08 Javascript
js如何判断用户是在PC端和还是移动端访问
2014/04/24 Javascript
js实现从数组里随机获取元素
2015/01/12 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
由浅入深剖析Angular表单验证
2016/07/14 Javascript
微信小程序教程之本地图片上传(leancloud)实例详解
2016/11/16 Javascript
值得分享的Bootstrap Table使用教程
2016/11/23 Javascript
jQuery 判断元素整理汇总
2017/02/28 Javascript
浅谈vue-router2路由参数注意的问题
2017/11/08 Javascript
微信小程序分享功能之按钮button 边框隐藏和点击隐藏
2018/06/14 Javascript
vue组件通信传值操作示例
2019/01/08 Javascript
详解JS实现简单的时分秒倒计时代码
2019/04/25 Javascript
详解Typescript 内置的模块导入兼容方式
2020/05/31 Javascript
原生JS实现九宫格抽奖
2020/09/13 Javascript
[01:00:25]NB vs Secret 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
[45:25]完美世界DOTA2联赛循环赛 PXG vs IO 第一场 11.06
2020/11/09 DOTA
Django imgareaselect手动剪切头像实现方法
2015/05/26 Python
Python实现简单字典树的方法
2016/04/29 Python
深入解析Python的Tornado框架中内置的模板引擎
2016/07/11 Python
Python对多属性的重复数据去重实例
2018/04/18 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
python使用pymongo操作mongo的完整步骤
2019/04/13 Python
基于TensorFlow中自定义梯度的2种方式
2020/02/04 Python
使用Python通过oBIX协议访问Niagara数据的示例
2020/12/04 Python
html5需遵循的6个设计原则
2016/04/27 HTML / CSS
介绍一下Java的安全机制
2012/06/28 面试题
2015年大学生工作总结
2015/04/21 职场文书
Python Pandas常用函数方法总结
2021/06/15 Python