npm 使用指南
因为有写关于node.js的配置的博客,还有node和gulp的前端信息配置使用,其中有很多命令都用到了npm。所以这里要着重介绍一下npm。
1 npm介绍
npm(mode package manager)
是node.js的包管理器,用于node插件管理(包括安装、卸载、管理依赖)
2 npm安装插件
命令提示符:
npm install <name> --save-dev //项目开发所需要的模块
npm install <name> --save //项目运行所依赖的模块
npm install <name> -g //全局安装
其中
<name>
是node插件的名称。- 全局安装,将会安装在
C:UsersAdministratorAppDataRoaming pm
,并且写入系统的环境变量中。 - 非全局安装,将会安装在当前所定位的项目的目录中。
- 全局安装可以通过命令行在任意地方调用它。
- 本地安装将安装在定位项目目录下的
node_modules
文件夹下,通过gulpfile.js
中的require()
调用。 --save
将保存配置信息在package.json(node.js的项目配置文件)
文档中的中dependencies属性
。一般保存在dependencies
中的像express/ejs/body-parser等--save-dev
保存在package.json
文档中的devDependencies属性
注意:因为node的插件模块包相对比较庞大,所以不加入版本管理中,因此还需要一个.gitignore
文档(参考博客《使用git上传项目到GitHub上》),将配置信息写入package.json
并将其加入版本管理,这样其他的开发者就可以通过下载对应的package.json
文档,然后通过执行npm install
命令自动下载所需要的包(npm install --production
只下载dependencies
属性的包)。
3 npm卸载插件
命令提示符:
npm uninstall <name> --save-dev //删除本地项目插件
npm uninstall <name> -g //删除全局插件
注意:不要直接删除本地的插件包,而是通过命令行删除
删除全部插件npm uninstall gulp-less gulp-uglify……
太麻烦了。所以可以借助rimraf
。命令行npm install rimraf -g
先全局安装,然后rimraf node_modules
4 npm更新插件
命令提示符:
npm update <name> -g //更新全局模块
npm update <name> --save-dev //更新定位的项目模块
5 查看npm帮助
命令提示符:
npm help
6 查看目录已安装插件
命令提示符:
npm list
7 常用的node插件
npm install gulp-jshint --save-dev //jshint 安装失败问题: 解决方案: npm install --save-dev jshint gulp-jshint
npm install gulp-ruby-sass --save-dev //编译sass文件
npm install gulp-concat --save-dev //合并js
npm install gulp-uglify --save-dev //通过UglifyJS来压缩JS文件.
npm install gulp-rename --save-dev //重命名文件的插件,当要把一个文件存储为不同版本时可以使用。比如在需要一个style.css同时你有需要一个style.min.css
npm install gulp-autoprefixer --save-dev //使用Autoprefixer来补全浏览器兼容的css。
npm install gulp-minify-css --save-dev //压缩css,最终是调用clean-css
npm install gulp-gzip --save-dev //压缩zip
npm install gulp-imagemin --save-dev //压缩png/jpg/git/svg 格式图片文件
npm install gulp-util --save-dev //gulp常用的工具库,在安装gulp时默认已经安装,可以直接使用
npm install gulp-clean --save-dev //清理档案
npm install gulp-watch --save-dev //gulp监听
npm install browser-sync --save-dev //浏览器自动刷新
npm install del --save-dev //删除
有道云笔记参考:http://note.youdao.com/noteshare?id=f416e9b1945df88689241900363fc981&sub=E5E9D6EBF71C482CAFF407BE573AF826