ES6 导入导出

ES6 导入导出

ES6引入了原生的模块化支持,使得JavaScript代码可以被划分为可重用的模块。这些模块可以导出部分代码(如函数、对象、类等),并被其他模块导入使用。


export
  1. 命名导出(Named Exports)

可以从模块中导出多个值。每个值的导出都有一个名称。

javascript 复制代码
// file: mathFunctions.js
export const add = (x, y) => x + y;
export const subtract = (x, y) => x - y;
  1. 默认导出 (Default Exports)
javascript 复制代码
// file: MyComponent.js
export default class MyComponent {
  // class definition
}

import - 导入
导入命名导出
  1. 使用花括号{}来导入特定的命名导出。
javascript 复制代码
// file: main.js
import { add, subtract } from './mathFunctions.js';

console.log(add(2, 3)); // 5
  1. 导入默认导出时,不使用花括号,并且可以指定任意名称
javascript 复制代码
// file: App.js
import MyComponent from './MyComponent.js';
  1. 混合导入,可以同时导入默认导出和命名导出
javascript 复制代码
// 假设 MyLibrary.js 中有默认导出和命名导出
import MyLibrary, { someFunction } from './MyLibrary.js';

和上边的导入和导出都不一样的一个例子。

Mock.js 的工作原理与常规的模块导出导入有所不同。当你在文件中引入 Mock.js 并调用 Mock.mock() 方法时,你实际上是在执行一个"全局"操作,它影响的是整个应用的网络请求层。

javascript 复制代码
import Mock from 'mockjs'
Mock.mock('/api/food', {...})

为什么不需要 export

在你的 mock.js 文件中,你并不需要导出任何东西,因为你的目的是执行配置,而非提供可以在其他地方使用的函数或对象。

当你在 main.js 中做了如下引入:

复制代码
javascriptCopy code
import './mock/index'

你实际上是在执行 mock/index.js 文件中的代码,其中包括 Mock.mock() 方法的调用。这些调用在应用启动时执行,从而设置了全局的Mock规则。这就是为什么即使没有 export,它仍然能够生效的原因。

相关推荐
xianxin_9 分钟前
CSS Dimension(尺寸)
前端
小宋搬砖第一名9 分钟前
前端包体积优化实战-从 352KB 到 7.45KB 的极致瘦身
前端
陈随易10 分钟前
前端之虎陈随易:2025年8月上旬总结分享
前端·后端·程序员
草巾冒小子14 分钟前
天地图应用篇:增加全屏、图层选择功能
前端
universe_0132 分钟前
day25|学习前端js
前端·笔记
Zuckjet37 分钟前
V8 引擎的性能魔法:JSON 序列化的 2 倍速度提升之路
前端·chrome·v8
MrSkye37 分钟前
🔥React 新手必看!useRef 竟然不能触发 onChange?原来是这个原因!
前端·react.js·面试
wayman_he_何大民44 分钟前
初识机器学习算法 - AUM时间序列分析
前端·人工智能
juejin_cn1 小时前
前端使用模糊搜索fuse.js和拼音搜索pinyin-match提升搜索体验
前端
....4921 小时前
Vue3 + Element Plus 实现可搜索、可折叠、可拖拽的部门树组件
前端·javascript·vue.js