CommonJs自定义模块的使用/npm 包 第三方模块/package.json版本信息

简介: CommonJs自定义模块的使用/npm 包 第三方模块/package.json版本信息

CommonJs弥补JavaScript没有标准库的缺陷CommonJS是模块化的标准 nodeJs就是CommonJS的实现

Node中的模块分为2大块

**一个是核心模块(HTTP URL FS)可以直接引入使用 上个博客讲了HTTP URL内置模块
二个是CommonJS自定义模块(文件模块)**

**

1.自定义模块的使用

:**

1.把公共的功能抽离为一个独立的js模块 在模块使用export 或者module.export暴漏出属性或者方法
2.需要使用这个模块的文件内require引入这个模块就可直接使用

导出和引入
导出某个方法建议exports 导出一个对象建议module.exports

使用方法举例:

function formatApi(api){
    return 'http://www.csdn.com'+api;
}
exports.formatApi=formatApi;//导出exports下的方法formatApi值为formatApi函数 
exports.formatApi=function(){return 'http://www.csdn.com'+api;}
module.exports=formatApi  导出formatApi函数
const tools = require('./module/tools')
//exports.formatApi=formatApi导出
console.log(tools )//{ formatApi: [Function: formatApi] }  
//exports.formatApi=function(){return 'http://www.csdn.com'+api;}
console.log(tools )//{ formatApi: [Function (anonymous)] }
//module.exports=formatApi导出
console.log(tools )// [Function: formatApi]
在这里插入代码片

引入node_modules文件

const  axios =require('/node_modules/axios/index')
简写为:
const  axios =require('axios')//默认访问node_modules下的文件 自动找axios的index.js

注意:如果node_modules下的文件不是axios/index.js命名 而是axios/axios.js 那么不会自动找到

**

解决:安装npm init --yes 在该文件夹下生成package.json文件即可找main对应的文件路径

**
在这里插入图片描述

2.npm 包 第三方模块

1.npm:
https://www.npmjs.com/
注意事项:

**虽然npm安装 node 不使用--save也会把包版本存放在dependencies形成依赖记录 但是cnpm安装确不会
npm install xx - -save (建议加上- -save这样会在package.json的dependencies形成依赖记录
到时候删除node_modules的时候 直接npm i 或者cnpm i 即可安装之前完好的node_modules**)

- -save 和- -save-dev的区别:

**- -save 会把依赖包名称添加到 package.json 文件 dependencies 键下,- -save-dev 则添加到
package.json 文件 devDependencies 键下.dependencies是运行时依赖,devDependencies是开发时的依赖。即devDependencies 下列出的模块,是我们开发时用的
总而言之:
1、--save-dev:只是开发和打包时会用到的,但实际上线并不需要
2、--save:除了开发需要,实际上线的时候也需要的**
在这里插入图片描述

npm 命令

**npm -v查看npm的版本
npm install xx--save npm安装工具包
npm uninstall xx卸载工具包
npm list 查看当前目录下已安装的包 (包内还会依赖其他)**
**npm info 模块 查看当前包的信息
npm install xx@4.67 指定版本安装**

拓展: npm 和bower 的区别

**npm是进行后端开发中,使用的模块安装工具,而bower,是前端的模块安装工具。
bower 的话,从一开始,就是专门为前端表现设计的包管理器,一切全部为前端考虑的。npm 和 bower 的最大区别,就是 npm 支持嵌套地依赖管理,而 bower只能支持扁平的依赖(嵌套的依赖,由
程序员自己解决)。
嵌套地依赖管理: 就是一个套一个牵连比较大
扁平的依赖:同级别的意思 不涉及嵌套**

在这里插入图片描述
2.第三方模块的使用方式:

**第一步:npm install silly-datetime --save
第二步:引入包 require('install silly-datetime')
第三步:下载你所使用的包 进入该官网查看使用步骤**
在这里插入图片描述

3.package.json

项目的所需各种模块以及配置信息(名称 版本 许可证等元数据)
1.创建package.json**

npm init --yes

2.信息版本号:**

在这里插入图片描述

相关文章
|
3月前
|
JSON 算法 vr&ar
目标检测笔记(五):查看通过COCOEvaluator生成的coco_instances_results.json文件的详细检测信息,包含AP、AR、MR和DR等
本文介绍了如何使用COCO评估器通过Detectron2库对目标检测模型进行性能评估,生成coco_instances_results.json文件,并利用pycocotools解析该文件以计算AP、AR、MR和DR等关键指标。
181 1
目标检测笔记(五):查看通过COCOEvaluator生成的coco_instances_results.json文件的详细检测信息,包含AP、AR、MR和DR等
|
3月前
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章介绍了npm的基础知识和常用命令,包括安装包、查看包信息、管理依赖等操作,并提供了如何删除npm安装的镜像以及如何彻底删除node_modules文件夹的具体步骤。
114 2
|
3月前
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章是关于npm包管理工具的学习、使用指南,包括npm概述、基础命令和如何安装webpack。
88 3
npm学习一:npm 包管理工具 学习、使用。
|
2月前
|
存储 JSON 监控
公司用什么软件监控电脑:JSON 在监控信息交互中的应用探索
在现代企业管理中,电脑监控软件广泛应用于保障信息安全和提升工作效率。JSON(JavaScript Object Notation)因其简洁和易读性,在监控信息的收集、传输和处理中扮演着关键角色。本文介绍了 JSON 在监控数据结构、信息传输及服务器端处理中的具体应用,展示了其在高效监控系统中的重要性。
40 0
|
3月前
|
资源调度 前端开发 安全
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
167 0
|
4月前
|
数据安全/隐私保护
发布一个npm包
发布一个npm包
132 2
|
5月前
NPM——删除已发布的包
NPM——删除已发布的包
160 1
|
5月前
|
存储 JSON 测试技术
Python中最值得学习的第三方JSON库
Python中最值得学习的第三方JSON库
142 0
|
5月前
|
JavaScript 前端开发 开发者
从零到一:教你如何发布自己的npm插件包
从零到一:教你如何发布自己的npm插件包
|
5月前
|
JavaScript
GitHub——自动发布NPM包
GitHub——自动发布NPM包
52 0

推荐镜像

更多