npm是nodejs附带的包管理工具,他的主要作用有三种 1.从服务器下载别人的包使用; 2.从服务器下载别人的命令行工具使用; 3.自己发布包或者命令行工具到服务器。



可以使用npm -v的方法来查看npm的版本号



npm -v //5.6.0



如果查询失败,可能你安装有问题。



 



 



一:安装



安装分为全局安装和本地安装



1.本地安装



npm的默认安装方式就是在本地安装,运行下面这条命令就可以在本地安装一个包,他会包含这个包的所有依赖



npm install <name>



安装完成后,目录在命令行运行目录下的node_modules目录,可以通过ls或者dir(windows系统使用这个)的方法来查看<name>这个目录是否存在。



 



2.全局安装



npm install -g <name>



全局安装会在user\node_modules的目录或者nodejs安装目录下的node_modules目录新增一个文件夹。



使用全局安装意味着你可以在全局环境下使用这个包,而不用每次切换目录都要重新下载。



 



 



二:package.json



什么是package.json,简单来说他方便我们对包进行管理,可以在json中列举所有的包依赖,指定的版本等。



(1)package.json必须具备两个属性



,name命名应该符合标识符的命名规则,不能出现空格和大写;



2.version(版本),以x.x.x(1.0.0)的形式命名。



 



(2)创建方法



npm init



输入完成后会提示你输入包的名称,描述,版本,入口点,默认命令等。



这样就在命令行所在目录创建了一个名字叫做package.json的文件,不过这样创建太过于繁琐了,虽然可以使用默认值,但是npm的出现不就是简化我们的操作么。



可以在init后面添加一个 -yes或者-y的描述,这样就会默认告诉全部使用默认属性



npm init -y



 



(3)自定义包依赖



包含两个属性,通过对象的形式添加依赖所需的包



  • dependencies:生产中需要用到的包
  • devDependencies:开发和测试用到的包
{
  "name": "desktop",
  "version": "1.0.0",
  "description": "",
  "main": "1.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "my_test_framework": "^3.1.0"
  }
}



上面添加了一个开发测试环境下用到的my_test_framework的依赖包,指定了所需版本。



或者通过另外一种简洁的方法



npm install <name> --save-prod



上面这条命令为package.json文件的dependencies(生产环境)属性新增了一条条目。



npm install <name> --save-dev



上面这条命令为package.json文件的devDependencies(开发测试环境)属性新增了一条条目。



 



三:更新



npm update <name>



可以在包名称前面添加一个-g表示全局更新



npm update -g <name>



更新所有的包使用



npm update -g



 



 



 



四:删除



上面说了包文件会存放在node_modules目录下,使用



npm uninstall <name>



即可在node_modules删除这个目录,如果是想删除全局安装的包可以使用



npm uninstall -g <name>



 



不过如果只是想在package.json的文件下,删除这个依赖包需要使用



npm uninstall --save <name>



注意,如果如果依赖包在devDependency(开发测试环境)需要使用



npm uninstall --save-dev <name>



来删除他



 



上面就是npm的简单使用,如果想查询更多的信息,可以直接访问官方文档进行查阅