【ES6】模块化

nodejs遵循了CommonJs的模块化规范

导入 require()

导出 module.exports

模块化的好处:

  • 模块化可以避免命名冲突的问题
  • 大家都遵循同样的模块化写代码,降低了沟通的成本,极大方便了各个模块之间的相互调用
  • 需要啥模块,调用就行

在es6模块化诞生之前, JavaScript社区就有了AMD、CMD、CommonJS(民间)

AMD、CMD适用于浏览器端的JavaScript模块化

CommonJS适用于服务器端的JavaScript模块化

太多的模块化规范给开发者增加了学习难度与开发的成本,因此官方的es6模块化规范诞生了。

为什么要学习es6模块化规范

官方提供

es6模块化浏览器端服务器都可以适用

es6模块化

导入 import

导出 export

使用步骤
  1. 确保安装了v13.0.0或更高版本的node.js
  2. 在package.json的根节点中添加"type": "module"节点
默认导入导出

默认导入 import 变量 from '文件路径'

默认导出 export default 内容

一个文件只能有一个默认导出

按需导入导出

按需导入 import {age} from '文件路径';

还可起别名 import {age as age1} from '文件路径';

按需导出 export let age = 18;

直接导入无导出

import '文件路径';

相关推荐
慧一居士1 分钟前
Nitro 和nuxt4框架关系
前端
IT_陈寒3 分钟前
React的useEffect把我坑惨了,这种闭包问题谁能想到
前端·人工智能·后端
xuankuxiaoyao14 分钟前
VUE.JS实践--事件对象和计算属性
javascript·vue.js·ecmascript
前端老石人14 分钟前
表单与交互式元素
前端·css·html
果粒蹬i17 分钟前
自用超半年的免费 OCR 工具分享:告别付费,本地搭建更安心
前端·网络·ocr
朝阳58122 分钟前
M3U8 下载助手油猴脚本 - 完全使用指南
前端·javascript·windows
kadog23 分钟前
GraphX:基于 WebGL 区间算术的 GPU 加速隐函数绘图器
前端·javascript·数学建模·webgl
utmhikari24 分钟前
【DIY小记】解决MacOS上Edge浏览器bilibili全屏卡顿的问题
前端·macos·性能优化·edge·bilibili
上单带刀不带妹24 分钟前
UniApp 页面跳转完全指南:5 种路由方式详解与实战对比
前端·javascript·vue.js·uni-app·跨端开发
大阿明27 分钟前
Node.js npm 安装过程中 EBUSY 错误的分析与解决方案
前端·npm·node.js