npm docs

设置镜像站

因为npmjs的官方网站,总会下载比较慢或打不开,所以通常需要设置一下镜像站来更好的安装npm库

  • npm install --registry http://registry.cnpmjs.org express 中国镜像站
  • npm config set registry http://registry.cnmpjs.org 设置为默认镜像站

查看版本和更新版本

  • npm -v 查看版本
  • npm install npm -g 更新npm
  • npm update -g npm 同上 更新npm

查看npm包默认安装目录

  • npm config get prefix 获取npm默认包安装目录 => // C:\Program Files\nodejs

安装包(本地安装或全局安装)

  • npm install lodash 本地安装
  • npm install lodash --save 保存到 package.json 文件的依赖列表
  • npm install -g grunt-cli 全局安装(可以在命令行直接调用 grunt 命令)
  • npm install -g jshint 全局安装jshint 或 更新全局的jshint

package.json

包描述文件,执行 npm install 时,会查找当前目录的package.json文件并安装本包所依赖的库

    {
"name": "demo-app",
"version": "1.0.0",
"dependencies": []
}
npm install lodash --save  //将 lodash添加到 package.json 文件的dependencies字段

也可以手动编辑 **package.json** 的`dependencies`字段,然后执行 `npm install `

"dependencies": {
"lodash": "^2.4.1",
"tap": "*"
}

安装包更新

  • npm outdated 根据 package.json 或 当前目录 node_modules 下已经安装的包,检查是否有需要更新的包
    npm install jquery@1.6.3 --save  //安装旧版本的jquery(@作为版本号前缀,bower是用#作为版本号前缀) 并保存到 package.json
npm outdated //检查过时包
	npm update //检查 package.json的dependencies,更新包

卸载包

  • npm uninstall lodash 从 node_modules 中删除 lodash
  • npm uninstall lodash --save 从 node_modules 中删除 lodash,并从 package.json 的 dependencies 中删除lodash
  • npm uninstall -g jshint 卸载全局安装的jshint

创建node.js包/模块

node.js的模块是一种包,可以发布到npm上,创建node.js模块从 package.json 开始, 可以手动创建一个 package.json 文件, 或者 用 npm init 命令以问答的方式创建。

package.json 的必须字段 nameversion , main字段指定包的入口文件(当该模块被require时,加载main指定的js),默认为 index.js

发布包

简单来说,包就是包含 package.json 文件的目录。 在发布前,需要在npm registry上有账号,npm adduser 问答的方式添加用户账号 注意 添加的用户账号需是在 npm registry(默认 http://registry.npmjs.org, 可用 npm config get registry 查看) 中已注册了的

如果之前设置了镜像站 npm config set registry http://registry.cnpmjs.org 那就要求在该镜像站已注册账号,才能添加成功

  1. npm adduser 之后,可以执行 npm login 把身份验证信息 保存到配置文件.npmrc
  2. npm publish 发布包到 http://www.npmjs.com 。 如果不带参数,则会在当前目录下查找package.json文件,按照该文件描述信息发布;如果指定目录,就会在指定目录下查找package.json文件 (若报什么错误 导致不能发布成功,很有可能是 包名已存在,首先尝试修改为比较特殊的报名试试)
  3. 访问 http://www.npmjs.com 搜索刚刚发布的包,确定是否成功。
  4. npm install hello-node-soon 安装刚刚发布的包
  5. 包的版本更新 修改 package.jsonversion 字段,重新 npm publish
  6. npm uninstall hello-node-soon 卸载包

查看/设置 npm配置

  • npm config get registry
  • npm config set registry http://registry.cnpmjs.org
  • npm config ls 查看当前目录下配置文件.npmrc 的信息
  • npm config ls -l 查看所有默认配置

查看帮助

  • npm help npm帮助总览,很多有用的帮助信息
  • npm install -h 查看某个命令的帮助

npm note的更多相关文章

  1. [NPM] Publish npm packages using npm publish

    In this lesson we will publish our package. We will first add a prepublish script that runs our buil ...

  2. 【转载】nodejs,npm,express分别什么?

    很多刚刚接触nodejs的初学者,都会经历一个很繁冗的环境安装过程. 一般主要要安装nodejs,npm和express三样东西.那么这三样东西分别是干什么的呢? 本篇文章就大致介绍一下这三样东西分别 ...

  3. JS, Node.js, npm简介

    序 听过JS,听过Node,也听过Node.js,还听过npm,然而并不是很清楚的知道都代表什么,这两天调接口,然后前端同学很忙,就自己把前端代码拿过来跑了,也趁机了解一下这几个概念,下边做个小的总结 ...

  4. 快速搭建 Node.js 开发环境以及加速 npm

    如何快速搭建 node 开发环境 npm 超慢 github 无法打开的问题 于是我觉得应该写一篇文章解答所有这些起步问题,让新同学也能顺顺利利入门. 快速搭建 Node.js 开发环境 如果你想长期 ...

  5. 【前端】Ubuntu16下nodejs+npm+vue环境配置

    笔者最近在学习vue.js,不过一直都是在runoob上面各种尝试.今天笔者在本机(Ubuntu16.04)尝试部署了nodejs+npm+vue开发环境,接下来将尽可能详细的讲述安装过程,帮助新人少 ...

  6. ubuntu 安装 npm、nodejs 各种问题

    nodejs let notifier = require('update-notifier')({pkg}) 报错 先卸载nodejs,然后安装稳定最新版 # apt-get remove node ...

  7. npm knowledge basics

    npm inro https://www.npmjs.com/ npm is the package manager for javascript npm 为 nodejs默认的包管理工具, 为nod ...

  8. Building gRPC Client iOS Swift Note Taking App

    gRPC is an universal remote procedure call framework developed by Google that has been gaining inter ...

  9. ubantu 14.04中安装npm+node.js+react antd

    今天折腾了半天,各种安装问题,最终还是装上了: 1.安装npm $ sudo apt install npm 2.升级npm $ sudo npm install npm@latest -g 输入np ...

随机推荐

  1. 001.web前端-学习了解

    学习web前端开发基础技术需要掌握:HTML.CSS.JavaScript语言.下面我们就来了解下这三门技术都是用来实现什么的: 1.html(Hypertext Markup Language)—— ...

  2. mysql函数操作(3)

    <?php $dbh = new PDO('mysql:dbname=testdb;host=localhost', 'mysql_user', 'mysql_pwd'); $dbh->s ...

  3. css3 transform 变形

    在css3中,用transform可以实现文字或图像的旋转.缩放.倾斜和移动,并且该元素下的所有子元素,随着父元素一样转.缩放.倾斜和移动. transform属性 transform的属性包括:ro ...

  4. 柯南君:看大数据时代下的IT架构(8)消息队列之RabbitMQ--案例(topic起航)

    二.Topic(主题) (using the Java client) 上一篇文章中,我们进步改良了我们的日志系统.我们使用direct类型转发器,使得接收者有能力进行选择性的接收日志,,而非fano ...

  5. java学习之匿名内部类与包装类

    匿名内部类: 所谓匿名内部类,顾名思义指的就是定义在类内部的匿名类,现有的spring框架开发以及java图形界面都经常用到匿名内部类. 下面来看一个代码: interface A{ public v ...

  6. configure mount nfs

    qemu-img convert -f raw -O qcow2 nix.img ruiynix.qcow2 1,yum createrepo

  7. c# 搭建服务端 常用的Helper(5)

    常用的Helper 1.byteHelper :对象与byte[]之间的转换 2.ConvertJson:操作json对象 3.EncodingHelper:对象编码 4.ModelConvertHe ...

  8. mongodb cpu 超过100%居高不下的原因分析过程

    -- mongodb cpu is high, infomation as below: 1 the message in the http://10.100.1.11:28017/ as below ...

  9. ios开发之再谈设计模式

    子曰:设计模式这东西,没有好坏之分,只有合适于不合适 天去面试很有意思,技术考官指着最后一道二选一的编程题说,这是昨天晚上专门为你新加的.当时我听后倍感惭愧. 虽然当时在纸上把大概思路和设计说了下.为 ...

  10. Android 刷新下拉控制 SwipeRefreshLayout

    上个月,google它宣布了自己的下拉刷新控制------SwipeRefreshLayout,控制封装在android-support-v4.jar包裹,依靠听力OnRefreshListener实 ...