欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

npm入门指南

程序员文章站 2022-05-31 20:17:58
...

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 <package-name> --save
      
      • 安装开发和测试需要的包
      npm install <package-name> --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 [email protected] -g

上一篇: Boost

下一篇: webpack 构建 npm 包优化