zoukankan      html  css  js  c++  java
  • package.json与package-lock.json文件是干什么用的?

    1.node_modules介绍

    • node_modules文件夹中存放许多的模块文件及插件

    2.package.json文件的作用

    产生背景:在拷贝项目时不需要拷贝node_modules文件夹,如果拷贝的话会很慢,那么如何解决安装的依赖与原项目依赖及版本保持一致呢?

    • package.json 项目描述文件,保存在项目的根目录下面,记录了当前的项目信息,用npm init -y命令生成
    • 拷贝项目后,直接执行npm install会自动安装package.json 文件中记录的依赖

    package.json文件

    {
      "name": "description",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",//主入口文件
      "scripts": {
        "test": "echo "Error: no test specified" && exit 1"//命令别名
      },
      "keywords": [],
      "author": "",
      "license": "ISC"
      "dependencies": {//项目依赖
        "formidable": "^1.2.2",
        "mime": "^2.4.4"
      },
      "devDependencies": {//开发依赖
        "gulp": "^4.0.2"
      }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    3.项目依赖vs开发依赖

    项目依赖

    • 项目依赖:在项目的开发阶段和线上运营阶段,都需要依赖的第三方包
    • 使用npm install 包名 命令将包添加到package.json文件的dependencies字段中
    • 重新安装时使用npm install --production 只安装项目依赖

    开发依赖

    • 开发依赖:在项目的开发阶段需要依赖,线上运营阶段不需要的第三方包
    • 使用npm install 包名 --save-dev命令将包添加到package.json文件的devDependencies字段中

    4.package-lock.json文件的作用

    • 记录模块与模块之间的依赖关系
    • 锁定包的版本
    • 记录项目所依赖第三方包的树状结构和包的下载地址,加快重新安装的下载速度
  • 相关阅读:
    mkdir命令
    pwd命令
    chmod命令
    chown命令
    chgrp命令
    687. Longest Univalue Path
    HYSBZ 1036 树的统计Count (水题树链剖分)
    POJ 3709 K-Anonymous Sequence (斜率优化DP)
    LightOJ 1065 Island of Survival (概率DP?)
    LightOJ 1248 Dice (III) (水题,期望DP)
  • 原文地址:https://www.cnblogs.com/mmzuo-798/p/14293387.html
Copyright © 2011-2022 走看看