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

089node-第三方模块 npm、node_modules、package-lock.json、package.json

程序员文章站 2022-07-01 10:39:07
...

别人写好的具有特定功能的第三方模块,由于第三方模块通常都是有多个文件组成并且被放置在一个文件夹中,所以又名包

// 两种存在形式
// 以js文件的形式存在,提供实现项目具体功能的api接口
// 以命令行工具形式存在。辅助项目开发

npmjs.com 第三方模块的存储和分发仓库

089node-第三方模块 npm、node_modules、package-lock.json、package.json

获取第三方模块

npm :node的第三方模块管理工具(node已经集成好了不需要单独下载)
下载:npm install 模块名称 (属于本地安装)默认下载到当前工作目录下
本地安装(只有自己项目可以用------库文件经常使用)
全局安装(安装到公共目录所有项目都能用------命令行工具经常使用)
npm install 模块名称 -g 下载 -g是全局安装
下载好的第三方模块会被存储在node_modules文件夹中
package-lock.json 锁定安装时的包的版本号,需要上传到git,保证大家的依赖包一致。
卸载 npm uninstall 模块名称

node_modules文件夹

问题:文件夹以及文件过多过碎,当我们将项目整体拷贝给别人的时候,传输速度会很慢很慢
文件传输时候,不会将node_modules传给对方

项目描述文件:package.json文件的作用会记录当前项目记录了依赖了那些模块【项目名称。版本,作者,github地址,当前依赖了那些模块

在项目根目录 使用npm init -y命令生成
{
    "name": "14description",项目名称
    "version": "1.0.0",版本
    "description": "",描述
    "main": "index.js",项目主入口文件
    "scripts": {命令的别名
      "test": "echo \"Error: no test specified\" && exit 1",
      "build":"nodemon app.js"
    },
    "keywords": [],关键字描述项目
    "author": "",作者
    "license": "ISC"开放源代码协议isc
    "dependencies": {依赖第三方模块===========项目依赖
        "formidable": "^1.2.2"
      }
      "devDependencies": {=============开发依赖
        "gulp": "^4.0.2"
      }
  }
使用命令别名时  npm run 别名
package.json

直接npm install 就会找到根目录下的packagejson去下载所需的模块(包含开发依赖!!!!!!)
直接npm install --production 生产环境 就会找到根目录下的packagejson去下载所需的模块(只有项目依赖 )

–save-dev 来区分项目依赖和开发依赖

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