您的位置:首页 > Web前端

前端工程化 - npm

2016-04-30 15:13 330 查看

什么是npm


npm的全称Node Package Manager,npm原先只是作为nodejs的包管理工具,然而随着前端社区的发展,如今npm不仅是nodejs的包管理工具,还是前端js的包管理工具。


更新npm


安装过nodejs都知道,nodejs的安装会顺便安装上npm,所以这里不讲如何安装npm。通过命令
npm update -g npm
可以进行npm的更新


墙的问题


因为墙的原因,在国内使用npm会比较慢,这时候可以使用淘宝的npm镜像

(方法一) 每次使用npm的时候指定镜像,
npm install -g npm --registry=https://registry.npm.taobao.org


(方法二) 安装cnpm,
npm install -g cnpm --registry=https://registry.npm.taobao.org
,之后就可以使用cnpm替代npm来进行包的安装,更新和卸载

(方法三) 设置全局镜像源
npm config set registry https://registry.npm.taobao.org[/code] 

常用命令


npm init
初始化bower生成package.json

npm install package-name
安装,如
npm install express
,可以带上
--save
参数,这样package.json中会写入该包的信息

npm uninstall package-name
卸载

npm update
更新

npm list
查看已安装的包列表


使用
npm shrinkwrap
来管理包的依赖


在项目开发中我们往往需要安装和升级相应的包,然而我们在开发的过程中使用的包版本和开发完成后进行部署的时候(npm install),包的版本可能会存在差异,这种差异可能就会导致项目运行报错。为了避免这种错误的发生,我们可以使用
npm shrinkwrap
来解决这个问题。

在开发过程中,引入一个新包的流程如下

执行
npm install --save package-name@package-version


进行实际开发

执行
npm shrinkwrap


将代码,package.json和npm-shrinkwrap.json提交到版本仓库

在开发过程中,更新一个包的流程如下

执行
npm outdated
获取项目所有依赖的更新信息

执行
npm install --save package-name@package-version


进行实际开发和功能测试

执行
npm shrinkwrap


将代码,package.json和npm-shrinkwrap.json提交到版本仓库

在开发过程中,删除一个包的流程如下

执行
npm uninstall --save package-name


进行测试

执行
npm shrinkwrap


将代码,package.json和npm-shrinkwrap.json提交到版本仓库


创建私有的npm镜像



安装sinopia
npm install -g sinopia


启动sinopia,执行
sinopia




接着在浏览器地址栏中输入
http://localhost:4873/




创建新用户
npm adduser --registry http://localhost:4873[/code] 
发布包
npm publish


在提交包之前需要到
~/.config/sinopia/config.yaml
配置文件中删除
proxy: npmjs
这行配置项,这样才能将包提交到本地私有源

安装包,安装包之前需要将镜像源指向私有的源,如
npm config set registry http://localhost:4873[/code] 
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: