当前位置: 首页 > news >正文

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

一:什么是模块化

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

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

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

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

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

2 CommonJS语法规则

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

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

1语法规则

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

2注意

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

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

1 命名导出和导入语法

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

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

对比默认和命名两种方式
命名是按需导入
默认导入则会将某个独立模块文件中所有内容全部导入一个模块中

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 个人电脑网络安全 之 防浏览器和端口溢出攻击 和 权限对系统的重要性
  • C++ set
  • vue3学习记录1:emit的写法
  • java8函数式编程学习(二):optional,函数式接口和并行流的学习
  • Java-根据前缀-日期-数字-生成流水号(不重复)
  • 力扣34题 双二分查找(简单易懂)
  • go语言的命名规则
  • C#中的Func
  • 探索 IPython %%sql 魔术:数据库交互的高效工具
  • git 使用教程
  • 压测实操--kafka-consumer压测方案
  • 【MSP430】DriverLib库函数,GPIO相关函数介绍
  • 数据传输安全--IPSEC
  • 驱动开发系列07 - 驱动程序如何分配内存
  • Python | Leetcode Python题解之第279题完全平方数
  • [数据结构]链表的实现在PHP中
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • angular学习第一篇-----环境搭建
  • Codepen 每日精选(2018-3-25)
  • es6
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • js中的正则表达式入门
  • PHP的类修饰符与访问修饰符
  • ReactNative开发常用的三方模块
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • Unix命令
  • Yeoman_Bower_Grunt
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 基于axios的vue插件,让http请求更简单
  • 聊聊redis的数据结构的应用
  • 模仿 Go Sort 排序接口实现的自定义排序
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 王永庆:技术创新改变教育未来
  • 微信小程序开发问题汇总
  • 系统认识JavaScript正则表达式
  • 详解NodeJs流之一
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • # 再次尝试 连接失败_无线WiFi无法连接到网络怎么办【解决方法】
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #07【面试问题整理】嵌入式软件工程师
  • $.ajax中的eval及dataType
  • (12)Linux 常见的三种进程状态
  • (2024,RWKV-5/6,RNN,矩阵值注意力状态,数据依赖线性插值,LoRA,多语言分词器)Eagle 和 Finch
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (LeetCode) T14. Longest Common Prefix
  • (不用互三)AI绘画:科技赋能艺术的崭新时代
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (十三)Flask之特殊装饰器详解
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)Android学习笔记 --- android任务栈和启动模式
  • (转)如何上传第三方jar包至Maven私服让maven项目可以使用第三方jar包
  • .bashrc在哪里,alias妙用