当前位置:网站首页>3.nodejs--模块化
3.nodejs--模块化
2022-07-30 02:42:00 【爱喝珍珠奶茶】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
目录
1.模块化语法
(1)模块化概念
在nodejs中,应用由模块组成,nodejs中采用commonJS模块规范。
require语法:把一系列相类似的功能封装到一个模块中,然后供使用
(2)模块化分类
(1)内置模块/核心模块
由 node 本身提供,不需要单独安装(npm),可直接引入使用
例如:
var fs=require("fs")
(2)第三方模块
由社区或个人提供,需要通过npm安装后使用。需要在文件夹的地址栏中输入cmd,然后在小黑窗口里面输入npm i mime下载。
例如:
var mine=require("mime")
(3)自定义模块
由自己本人创建定义的
注意:自定义模块的路径必须以
./获取../开头,后面跟创建文件的后缀名例如:
var myquerystring=require("./myquerystring.js")
2.模块的导入与导出
(1)模块导入
(1)通过
require("fs")来加载模块require("fs1") 解释: (1)去当前项目中的node_modules文件夹中找fs1文件夹 中的package.json中main字段 对应的路径 然后引入 (2)没有就去node的安装包中的全局安装路径中找 (3)还是没有找到 就去核心库(2)如果是第三方模块,需要先使用npm进行下载
(3)如果是自定义模块,需要加上相对路径
./或者../,可以省略.js后缀,如果文件名是index.js那么index.js也可以省略。(4)模块可以被多次加载,但是只会在第一次加载
(2)模块导出
在模块的内部,
module变量代表的就是当前模块,它的exports属性就是对外的接口,加载某个模块,加载的就是module.exports属性,这个属性指向一个空的对象。
3.npm和项目配置文件package.json文件
(1)npm
npm:提供项目中模块/插件的 下载相关功能
(1)下载(常用)
npm i/install 模块名字/模块名字@版本号
npm i [email protected]
npm i 模块名 //安装到本地
npm i 模块名 -g//安装到全局
npm i 模块名 --save//安装到项目依赖
npm i 这个指令 会去项目的配置文件中找到依赖的包 全部下载
npm run dev 这个指令 会去项目的配置文件中找到scripts字段 运行里面的dev指令
(2)更新/删除
npm update 模块名 //帮你更新到最新版本
npm update 模块名@版本 //帮你更新到指定版本
npm uninstall 模块名 //删除模块
(2)package.json 文件
(1)每一个项目 构建时 先构建一个package.json文件 它代表了这个项目的一些结构和配置信息(项目的清单)
(2)构建指令: 在项目文件夹下 npm init -y 初始化一个项目清单文件 npm i 是按照项目清单文件去安装所有的依赖项
package.json 文件:项目的配置文件 用于记录整个项目的一些信息
项目名==>项目的名字
作者信息:
"scripts":{"dev":"node index.js"} 启动指令 主要用于小黑窗的npm启动 npm run dev
"dependencies" 项目依赖
边栏推荐
- 【C语言刷LeetCode】451. 根据字符出现频率排序(M)
- 一文读懂Elephant Swap,为何为ePLATO带来如此高的溢价?
- centOS安装MySQL详解
- 解决导航栏变黑色
- Dell's first pure soft product redefines next-generation object storage
- JS Bom location 楼层导航效果 offsetTop data-n 方括号选择器
- Embedded SIG | 分布式软总线
- 超详细的MySQL三万字总结
- Oracle超全SQL,细节狂魔
- 解决:npm ERR code ELIFECYCLE npm ERR errno 1(安装脚手架过程中,在npm run dev 时发生错误)
猜你喜欢
随机推荐
戴尔首款纯软产品,再定义下一代对象存储
零代码工具推荐---HiFlow
RAII技术学习
浏览器缓存机制
A. Strange Birthday Party- Codeforces Round #694 (Div. 1)
解决:Error while adding the mapper ‘interface to configuration. Error parsing Mapper XML
生死时速,分秒必争
判断Object是否依赖于名叫“XX“的资产
AI落地难?云原生助力企业快速应用机器学习 MLOps
Detailed explanation of carousel picture 2 - carousel pictures through left positioning
机器学习1一回归模型(一)
uni-app如何配置APP自定义顶部标题栏
el-table sum total
Successfully resolved AttributeError: 'PngImageFile' object has no attribute 'imshow'
详解轮播图二-通过left定位来轮播图片
MIT6.S081 Summary
JS Navigator appName appVersion userAgent platform
Zero code tools recommended - HiFlow
consul operation
错误:“filesystem“ 不是 “std“ 的成员








