Nodejs模块化

模块化

什么是模块化

CommonJS模块是为Nodejs打包JavaScript代码的原始方式。Nodejs还支持浏览器和其他JavaScript运行时使用的ECMAScript模块标准

在Nodejs中,每个文件都被视为一个单独的模块

项目是由多个模块文件组成的

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eFe6wlXw-1691295750784)(.\项目模块.png)]

好处: 提高代码复用性,按需加载,独立作用域

使用: 需要标准语法导出和导入进行使用

CommonJS标准

定义utils.js模块,封装基地址和数组总和的函数

导出  module.exports = {}
导入  require('模块名路径')
模块路径
内置模块   直接写名字   fs,path,http
自定义模块  写模块文件路径   ./utils.js

ECMAScript标准

默认导入导出

封装基地址和数组总和的函数

默认导出 export default {}
导入  import 变量名 from '模块名或路径'
注意  Nodejs默认支持Commonjs标准语法
如果使用ECMAScript 标准语法 在运行模块所在文件夹新建package.json   设置{type:'module'}

命名导入和导出

 导出  export 修饰定义的语句
 导入  import {同名变量} from '模块名或路径'

 按需加载  使用命名导出和导入
 全部加载  使用默认导出和导入

包:将模块,代码,其他资料 聚合成一个文件夹

分类:

  • 项目包:主要用于编写项目和业务逻辑

  • 软件包 封装工具和方法进行使用

    要求:根目录中,必须由package.json文件(记录包的清单信息)

    ​ 导入软件包时,引入的默认是index.js模块文件 /main属性指定的模块文件

案例:封装数组求和函数的模块 判断用户名和密码长度函数的模块 形成一个软件包

package.json 作用 记录软件包的名字,作者,入口文件等信息

导入一个包文件夹的时候 导入的是index.js文件

npm-软件包管理器

npm是Nodejs标准的软件包管理器

使用:

  • 初始化清单文件 npm init -y (得到package.json 文件)
  • 下载软件包 npm i 软件包名称
  • 使用软件包

npm 安装所有依赖

项目中不包含node_modules 不能正常运行 ,缺少依赖的本地软件包

下载所有的依赖 npm i

下载package.json中记录的所有软件包

npm 全局软件包 nodemon

软件包区别:

  • 本地软件包 :当前项目内使用,封装属性和方法,存在于node_modules
  • 全局软件包: 本机所有项目使用,封装命令和工具,存在于系统设置的位置

nodemon 作用 替代node命令,检测代码更改 自动重启程序

使用:

1.安装 : npm i nodemon -g (-g 代表安装到全局环境中)

  1. 运行: nodemon 待执行的目标js文件

常用命令

执行js文件              node  xxx
初始化package.json      npm init -y
下载本地软件包           npm i 软件包名      npm install 软件包名
下载全局软件包           npm i 软件包名 -g    npm install 软件包名 -g
删除软件包              npm uni 软件包名      npm uninstall 软件包名 -g

Express–框架

基于Nodejs平台 快速,开放 极简的web开发框架

概念:使用express 本地软件包,快速搭建web服务(基于http模块)

功能: 提供数据接口 提供网页资源

使用:

  • 下载express软件包
  • 导入express创建web服务对象
  • 监听请求方法和请求路径
  • 对其他请求方法和请求路径,默认返回404提示
  • 监听端口号,启动web服务,在浏览器测试

你可能感兴趣的:(node.js,node.js)