一、npm简介  

npm(Node Package Manager)是随同node.js 一起安装的包管理工具,为了解决nodejs代码部署上的很多问题,常用以下场景:

  1. 允许用户从npm服务器下载别人编写的地方包到本地使用。
  2. 允许用户将自己编写的包或明显杭程序上传到NPM服务器供别人使用。

二、npm使用前提

必须先安装node.js,安装地址官网http://nodejs.cn/,安装完成以后通过“node -v”查看版本号

三、第一次git了项目

第一次git上获取项目,记得一定要先npm install

因为刚下载的项目,没有node_modules,只有通过npm install命令以后会根据package.json  去下载相关依赖包。

四、npm命令大全

1  npm install 安装模块

PS D:\Source2019\TestGit\TestGit> npm install webpack -g

PS D:\Source2019\TestGit\TestGit> npm install webpack

全局安装是安装一个工具,他不是安装在一个文件夹下,而是安装在某个全局环境下,一般安装的路径为,C:\Users\XXX\ 下面(PS:暂时未找到在那个目录下),全局安装在命令行中任何地方都可以直接调用。

局部安装是将项目安装以后,安装在./node_modules 下面,然后在项目中,我们可以使用require等方式应用,这样安装以后只能在本项目中使用,而webpack这样的工具在各种情况下使用,建议全局安装。

 为什么已经全局安装了,还需要本地安装呢? 

  1、仅仅是全局安装够用吗?

  通常情况下的引入模块是分为两种来寻找的,一种就是全局模块,通过NODE_PATH下去寻找;还有一种就是通过./node_modules去寻找。 如果在项目中,我们希望使用require来表现这种明显的依赖关系,那么我们就必须使用安装来进行require当然也是可以将全局安装的文件复制过来,但是这是非常麻烦的。 或者是使用..、.、/等这种相对或者绝对的方式来引入,这些无疑都是比较麻烦的,所以本地安装不够用。

  另外,我们也许在不同的项目中所需要的模块的版本是不同的,或者可能对某些模块进行重新命名,这就导致一个项目的重命名影响全局,这是不划算的。

  2、本地安装的重要性。

  因为我们需要的包可能有十个,他们之间相互依赖的,如果我们使用全局包,那么每次包的升级、更新等就会影响你的多个项目,那么依赖关系就会被破坏,所以使用本地安装有利于不同项目之间的独立性。

综上所述:除了工具类比如webpackbabel。以外建议使用本地安装,这样可以保证各自项目的包是独立的。

   npm install X、npm install X -save、npm install X -save-dev的区别

   1、npm install X:

        会把X包安装到node_modules目录中,

         不会修改package.json,

         之后运行npm install 命令时,不会自动安装X

   2、npm install X -save:

         会把X包安装至node_modules目录中,

         会在package.json的dependencies属性中添加X,

         之后运行npm install命令会自动安装X到node_modules中

         运行时需要引用的包

   3、npm install X-save-dev

         会把X包安装到node_modules目录中

         会在package.json的devDependencies属性下添加X

         之后运行npm install命令时,会自动安装X到node_modules目录中

         开发过程需要使用的包

  

   

2.npm uninstall 卸载模块

3.npm update 更新模块

4.npm outdated 检查模块是否已经过时

5.npm ls 查看安装的模块

6.npm init  在项目中引导创建一个package.json 文件

通过package.json描述包引用情况,以便后续的其他的项目开发或者他人合作使用。

7.npm help  查看某条命令的详细帮助

这个相当方便,会自动打开相应命令的帮助文档。

8.npm root  查看包的安装路径

9.npm config  管理npm的配置路径

10.npm start 启动模块

11.npm stop 停止模块

12.npm restart 重新启动模块

13.npm test 测试模块

14.npm version 查看模块版本

15.npm view 查看模块的注册信息

16.npm adduser 用户登录

17.npm publish 发布模块

18.npm access 在发布的包上设置访问级别

19.npm package.json的语法

04 npm 命令大全的更多相关文章

  1. npm命令大全

    参考网站:https://docs.npmjs.com/ 有了npm,可以很快的找到特定服务要使用的包,进行下载.安装以及管理已经安装的包. npm 常用命令 npm install <name ...

  2. C/C++学习----使用C语言代替cmd命令、cmd命令大全

    [开发环境] 物理机版本:Win 7 旗舰版(64位) IDE版本:Visual Studio 2013简体中文旗舰版(cn_visual_studio_ultimate_2013_with_upda ...

  3. Hadoop命令大全

    Hadoop命令大全 分类: 云计算2011-03-01 15:04 6852人阅读 评论(0) 收藏 举报 hadoop作业任务集群class脚本 1.列出所有Hadoop Shell支持的命令   ...

  4. 开发必备linux命令大全-稳赚不亏

    我们的服务一般都是在linux系统运行,因此了解一些关于linux命令是必须.接下来将一一详细介绍一些常用的linux的命令 文件操作 远程登录与操作 磁盘挂载 进程管理 启动和结束 系统性能参数查看 ...

  5. .NET Core dotnet 命令大全

    dotnet 命令大全,让你理解dotnet 命令. 本文将以一个实例串起 dotnet 所有命令,让你玩转dotnet 命令. 本篇文章编写环境为windows 10 ,dotnet 命令同样适用于 ...

  6. 【转】Hadoop命令大全

    Hadoop命令大全 本节比较全面的向大家介绍一下Hadoop命令,欢迎大家一起来学习,希望通过本节的介绍大家能够掌握一些常见Hadoop命令的使用方法.下面是Hadoop命令的详细介绍. 1.列出所 ...

  7. CMD命令大全

    有关某个命令的详细信息,请键入 HELP 命令名 ASSOC 显示或修改文件扩展名关联. AT 计划在计算机上运行的命令和程序. ATTRIB 显示或更改文件属性. BREAK 设置或清除扩展式 CT ...

  8. DOS命令大全!

    一)MD——建立子目录 1.功能:创建新的子目录 2.类型:内部命令 3.格式:MD[盘符:][路径名]〈子目录名〉 4.使用说明: (1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前 ...

  9. 黑客攻击常用CMD命令大全

    黑客常用命令大全net user heibai lovechina /add 加一个heibai的用户密码为lovechina net localgroup Administrators heibai ...

随机推荐

  1. FastDFS分布式图片服务器搭建

    一:Fastdfs简介 1. 什么是FastDFS FastDFS 是用 c 语言编写的一款开源的分布式文件系统.FastDFS 为互联网量身定制, 充分考虑了冗余备份.负载均衡.线性扩容等机制,并注 ...

  2. 不使用C库函数(Sprintf)将void* 指针转换为十六进制字符串

    #include <stdio.h> #include <stdint.h> #include <stdlib.h> void hexDump(void *ptr, ...

  3. PHP回顾(4)文件相关函数

    touch()          创建文件 (修改时间,不存在时创建) copy()            复制文件,复制过程中可以修改文件名 rename()        重命名 或  移动文件  ...

  4. java+大文件断点续传

    用JAVA实现大文件上传及显示进度信息 ---解析HTTP MultiPart协议 (本文提供全部源码下载,请访问 https://github.com/1269085759/up6-jsp-mysq ...

  5. HZOJ 20190722 visit (组合数学+数论)

    考试T2,考试时打了个$O(n^3)$dp暴力,思路还是很好想的,但细节也不少,然后滚动数组没清空,而且题又看错了,只得了10pts,真是血的教训. 题解: 其实看数据范围,给出了模数是否为质数,其实 ...

  6. flask框架(一):初入

    1.装饰器回顾 # -*- coding: utf-8 -*- # @Author : Felix Wang # @time : 2018/7/3 17:10 import functools &qu ...

  7. [科普] CPU, GPU, TPU的区别

    Google Cloud 原文链接:https://cloud.google.com/blog/products/ai-machine-learning/what-makes-tpus-fine-tu ...

  8. JavaWeb-RESTful(三)_使用SpringMVC开发RESTful_下

    JavaWeb-RESTful(一)_RESTful初认识 传送门 JavaWeb-RESTful(二)_使用SpringMVC开发RESTful_上 传送门 JavaWeb-RESTful(三)_使 ...

  9. 简单的SSRF的学习

    自己眼中的SSRF 成因 服务端允许了 可以向其他服务器请求获取一些数据 通过各种协议 http https file等(外网服务器所在的内网进行端口的扫描指纹的识别等) 一SSRF配合redis未授 ...

  10. 【java】获取项目资源路径

    目资源路径分两种,一种是普通Java项目的资源路径,另一种是JavaEE项目的资源路径. 获取Java项目的包(源码下的包 或者 jar包)的资源路径 // 方法1:通过this.getClass() ...