Node.js笔记

本文介绍Node.js中的模块化开发,包括解决文件依赖和命名冲突问题的方法,以及如何使用exports和require进行模块成员的导出和导入。同时,文章还探讨了系统模块、第三方模块的作用和使用,如fs文件操作、path路径操作和nodemon、nrm等工具。

Node.js 组成

在这里插入图片描述

Node.js模块化开发

JavaScript在使用时存在两大问题,文件依赖和命名冲突
依赖关系不确定。
模块化开发
一个功能就是一个模块,多个模块可以死组成完整应用,抽离一个模块不会影响
其他功能的运行
Node.js中模块化开发规范
Node.js规定一个JavaScript文件就是一个模块,模块内部定义的变量和函数默认情况下载外部无法得到
模块内部可以使用exports对象进行成员导出,使用require方法导入其他模块.
在这里插入图片描述

const,var,let都是js中声明变量的,其中 const不可修改,而且必须初始化。
模块成员导出的另一种方式:
在这里插入图片描述
exprots是module.exports的别名(地址引用关系),导出对象最终以module.exports为准。

const greeting = name=> 'hello ${name}';
const x = 100;
exports.x = x;
module.exports.greeting = greeting;
//当exprots对象和moudle.exports对象指向的不是同一个对象时 以module.exports为准
module.exports = {
	name: 'zhangsan'
}
exports = {
	age: 20
}

在这里插入图片描述
注意:这里的const greeting = name=> ‘hello ${name}’;中用的是ES6的模板字符串方法,name是可以替换的,用反引号设置字符串.const也是ES6中增加的声明变量的。

系统模块

Node运行环境提供的API,因为这些API都是以模块化的方式进行开发的,所以我们又成Node运行环境提供的API为系统模块。

系统模块fs文件操作
在这里插入图片描述
在这里插入图片描述
写入文件内容:
在这里插入图片描述
在这里插入图片描述

系统模块path路径操作

为什么要进行路径拼接
不同操作系统的路径分隔符不统一
在这里插入图片描述
相对路径VS绝对路径

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用相对路径相对的是否是当前的文件,大多数情况下相对路径相对的是命令行工具的当前工作目录。

第三方模块

别人写好的,具有特定功能的,我们能直接使用的模块即第三方模块,由于第三方模块通常是由多个文件组成并且被放置在一个文件夹中所以又名包。
第三方模块有两种存在形式:
以js文件的形式存在,提供实现项目具体功能的API接口。
以命令行工具形式存在,辅助项目开发。

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

第三方模块 nodemon
nodemon是一个命令行工具,用以辅助项目开发。
在Node.js中,每次修改文件都要在命令行工具中重新执行该文件,非常繁琐

第三方模块: nrm
nrm : npm下载地址切换工具,因为默认的下载地址在国外,国内下载速度慢

使用步骤:

  1. 使用npm install nrm -g 下载
  2. 查询可用下载地址列表 nrm ls
  3. 切换npm下载地址nrm use 下载地址名称

第三方模块 Gulp

基于node平台开发的前端构建工具
将机械化操作编写完成任务,想要执行机械化操作时执行一个命令行命令任务就能自动执行了
用机器代替手工,提高开发效率

Gulp能做什么
项目上线,HTML,CSS,JS文件压缩合并
语法转换(es6,less。。。)
公共文件抽离
修改文件浏览器自动刷新
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值