关于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——入门必看攻略全部内容了,希望大家多多支持~