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. @property和@synthesize

    main.m #import <Foundation/Foundation.h> #import "Student.h" int main(int argc, cons ...

  2. fs读取某个json文件的数据

    /** * Created by Administrator on 2016/7/12. * 流数据 */ var fs = require('fs'); var stream = fs.create ...

  3. (转)详解汇编系统调用过程(以printf为例)

    本文以printf为例,详细解析一个简单的printf调用里头,系统究竟做了什么,各寄存器究竟如何变化. 环境: linux + gnu as assembler + ld linker 如何在汇编调 ...

  4. [C++基础]在构造函数内部调用构造函数

    看下面的面试题: #include <iostream> using namespace std; struct CLS { int m_i; CLS( int i ) : m_i(i){ ...

  5. 实现php获取mp3文件元信息如播放时间歌曲作者等

    最近收集到一个php获取mp3文件元信息的类,感觉比较方便.现在分享给大家! 下面是使用方式和测试方式: <?php include_once 'mp3file.class.php'; func ...

  6. CodeForces 379 D. New Year Letter

    枚举开头结尾的字母,枚举ac的个数,总AC个数就是两个Fibonacci数列的和..... D. New Year Letter time limit per test 1 second memory ...

  7. (译) 《Javascript 24条最佳实践》

    (摘录) <Javascript 24条最佳实践> 自己一直偏向于实用主义,不是学院派,不是学究派,只讲究把东西能够很好的做出来,但经过一段时间的开发工作当自己总结出来一些东西时,觉得挺有 ...

  8. Xampp Linux应用

    一.基本操作: 1.Xampp安装包下载:   https://www.apachefriends.org/index.html   2.安装与配置:   将xampp-linux-x64-5.6.3 ...

  9. Adobe Acrobat 9 Pro Extended 9.4简体中文完整免激活注册版

    Acrobat9 Pro最近升级比较频繁,如今已经升级到了Acrobat 9 Pro Extended 9.4版.亿品元素上曾经分享过Acrobat Pro Extended简体中文版 9.3.3 优 ...

  10. 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转

    (一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...