美文网首页
package.json文件详解

package.json文件详解

作者: 每日log | 来源:发表于2021-03-06 22:53 被阅读0次

    一、package.json文件

    1.创建一个package.json文件

    可以使用npm init -y命令生成

    2. 生成一个默认的package.json

    {
      "name": "test",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [],
      "author": "",
      "license": "ISC"
    }
    

    package.json中记录了项目名称、版本、作者等。

    除了上述信息外,文件里也包含里当前项目依赖了哪些第三方模块。这些项目依赖可分为项目依赖和开发依赖。

    3项目依赖

    在项目的开发阶段和线上运营阶段,依赖的第三方包,称为项目依赖

    下载命令:npm install 包名

    下载的文件会默认被添加到 package.json文件的dependencies 字段中

    01. 例如下载jquery

    npm install jquery
    

    02. package.json的内容如下:

    
    {
      "name": "test",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [],
      "author": "",
      "license": "ISC",
      "dependencies": {
        "jquery": "^3.6.0"
      }
    }
    
    

    03. 我们能发现,文件里多了一个dependencies:

    "dependencies": {
        "jquery": "^3.6.0"
      }
    

    4开发依赖

    在项目的开发阶段需要依赖,线上运营阶段不需要依赖的第三方包,称为开发依赖

    使用npm install 包名 --save-dev命令将包添加到package.json文件的devDependencies字段中

    01. 例如下载gulp

    npm install gulp --save-dev
    

    02. package.json的内容如下:

    {
      "name": "test",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [],
      "author": "",
      "license": "ISC",
      "dependencies": {
        "jquery": "^3.6.0"
      },
      "devDependencies": {
        "gulp": "^4.0.2"
      }
    }
    
    
    03. 我们能发现,文件里多了一个devDependencies:
    "devDependencies": {
        "gulp": "^4.0.2"
      }
    

    二、package.json作用

    1 node_modules文件夹的问题

    目前项目都是按照工程化的方式创建的,其中会有很多第三方包,下载的第三方包文件都被放在的mode_modules文件夹中,当我们把一个项目拷贝给别人时,如果连带着mode_modules文件,会下载的相当慢。

    其次,模块的版本都是不定时更新和维护的,如果不记录着,会导致项目运行报错

    2 package-lock.json文件的作用

    下载第三方依赖包时,会在项目根目录下生成一个package-lock.json文件package-lock.json这个文件会保存node_modules中所有包的信息

    image

    这个文件的主要作用是:

    锁定包的版本,确保再次下载时不会因为包版本不同而产生问题

    image

    Readings

    image

    截图来自日本动漫《怪物事变》

    END
    原文来自:package.json文件详解

    相关文章

      网友评论

          本文标题:package.json文件详解

          本文链接:https://www.haomeiwen.com/subject/iyxeqltx.html