【Node.js基础04】node.js模块化

一:什么是模块化

在Node.js中,每个文件都可视为一个独立的模块。模块化提高了代码的复用性,按需加载,具有独立的作用域

二:如何实现多个文件间导入和导出

1 CommonJS标准(默认)-导入和导出

1 项目中如何联动多个模块文件

利用CommonJS标准在不同模块文件中导入、导出模块,最终达到在某一模块文件中使用多个模块文件中的内容

2 CommonJS语法规则

javascript 复制代码
//导出模块:module.exports={导出内容}
//导入模块:require('模块名/路径')
//内置模块直接写模块名(fs、http、path)
//自定义模块写模块文件路径

2 ECMAScript标准-默认导入和导出模块

1语法规则

javascript 复制代码
//导出 
export default{要导出内容}
//导入 
import 变量名 from '模块名或路径 '

2注意

Node.js默认支持CommonJS标准语法。如果使用ECMAScript标准语法,在运行模块所在文件夹新建package.json文件,并设置{'type':'module'}

3ECMAScript标准-命名导出和导入

1 命名导出和导入语法

javascript 复制代码
//导出:export修饰定义语句
export const baseUrl = 'www.baidu.com'
//导出:import {同名变量}from'模块名或路径'
import {baseUrl}from '模块名或路径'

2 怎么选择"命名/默认"这两种方式下的导入和导出

对比默认和命名两种方式

命名是按需导入

默认导入则会将某个独立模块文件中所有内容全部导入一个模块中

相关推荐
七牛云行业应用10 分钟前
保姆级 OpenClaw 避坑指南:手把手教你看日志修 Bug,顺畅连通各大 AI 模型
人工智能·后端·node.js
多厘2 小时前
使用 nvm 管理多版本 Node 项目依赖
node.js
前端双越老师1 天前
Skills 是什么?如何用于 Agent 开发?
人工智能·node.js·agent
San302 天前
AI 时代的“USB-C”接口:MCP 核心原理与实战
langchain·node.js·mcp
helloweilei3 天前
javascript 结构化克隆
javascript·node.js
小蜜蜂dry4 天前
nestjs学习 - 控制器、提供者、模块
前端·node.js·nestjs
San304 天前
手写 Mini Cursor:基于 Node.js 与 LangChain 的开发实战
langchain·node.js·agent
前端付豪4 天前
Nest 项目小实践之图书增删改查
前端·node.js·nestjs
sunny_5 天前
面试踩大坑!同一段 Node.js 代码,CJS 和 ESM 的执行顺序居然是反的?!99% 的人都答错了
前端·面试·node.js
Qinana5 天前
150行代码搞定私有知识库!Node.js + LangChain 打造最小化 RAG 系统全流程
人工智能·程序员·node.js