npm入门指南

npm入门(node.js package manage)

  • js的包管理
  • 三大组成部分
    • 有网站界面可以搜索js包、管理配置文件、管理公开和私有的js包
    • 有命令行工具
    • 有一个JavaScript软件及其元信息的大型公共数据库
  • 搜索js包, 可以按以下条件或者三种混合搜索
    • 按下载量
    • 质量 是否有readme文件、稳定、测试脚本、最新依赖、自己的网站等等
    • 维护 社区是否活跃、有人维护

安装第三方js包

命令行安装

  • 当前工程使用, 例如你只想通过require引用某一个js包

    • 需要在index.js同级目录使用安装命令(和当前目录有关)
    npm istall lodash --save
    
  • 全局使用, 例如你想安装一个命令行工具(与当前目录无关)

    npm install -g grunt
    
  • 安装目录

    • 安装在node_modules目录中, 如果没有会自动创建

通过package.json安装

  • 手动创建package.json文件

    • 必须要有name和version两个属性
    {
      "name": "my-awesome-package",
      "version": "1.0.0"
    }
    
  • 通过命令行创建package.json

    • 执行以下命令需要手动设置name, version等
    npm init
    
    • 创建默认package.json
      • 命令
      npm init -y
      
      • 内容
          {
            "name": "webpack_demo",
            "version": "1.0.0",
            "description": "",
            "main": "index.js",
            "scripts": {
              "test": "echo \"Error: no test specified\" && exit 1"
            },
            "author": "",
            "license": "ISC",
            "devDependencies": {
              "webpack": "^4.11.0"
            }
          }
      
      
    • 安装依赖的包
      • 安装生产必需包
      npm install  --save
      
      • 安装开发和测试需要的包
      npm install  --save-dev
      
      • 在package.json中添加依赖关系
      {
        "name": "my_package",
        "version": "1.0.0",
        "dependencies": {
          "my_dep": "^1.0.0"
        },
        "devDependencies" : {
          "my_test_framework": "^3.1.0"
        }
      }
      
  • package.json内容解析
    • name: 目录名
    • version: always 1.0.0
    • description: ""或者readme.md中的内容
    • main: index.js 入口文件
    • scripts: 空的测试脚本
    • keywords: empty
    • author: empty
    • license: ISC, 引用许可
    • dependencies: 生产环境必需的包
    • devDependencies: 开发和测试需要的包
  • 可以重新设置package.json的内容
npm set init.author.email "[email protected]"

更新包

  • 查看依赖的包

    npm ls
    
  • 查看需要更新的包

        # 查看本地
        npm outdated
        # 查看全局
        npm outdated -g --depth=0
    
  • 更新所有本地包

    npm update
    

卸载包

  • 从node_modules移除
    # 本地
    npm uninstall lodash
    # 全局卸载
    npm uninstall -g grunt
    
    
  • 从node_modules移除, 冰衣橱package.json中的依赖关系(save-dev同理)
    npm uninstall --save lodash
    

更新npm

npm install npm@latest -g

你可能感兴趣的:(npm入门指南)