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,它仍然能够生效的原因。

相关推荐
广州华水科技16 分钟前
单北斗GNSS在桥梁形变监测中的应用与技术进展分析
前端
我讲个笑话你可别哭啊18 分钟前
鸿蒙ArkTS快速入门
前端·ts·arkts·鸿蒙·方舟开发框架
CherryLee_121020 分钟前
基于poplar-annotation前端插件封装文本标注组件及使用
前端·文本标注
特立独行的猫a26 分钟前
C++轻量级Web框架介绍与对比:Crow与httplib
开发语言·前端·c++·crow·httplib
周航宇JoeZhou29 分钟前
JB2-7-HTML
java·前端·容器·html·h5·标签·表单
代码小库31 分钟前
【课程作业必备】Web开发技术HTML静态网站模板 - 校园动漫社团主题完整源码
前端·html
珹洺37 分钟前
Bootstrap-HTML(二)深入探索容器,网格系统和排版
前端·css·bootstrap·html·dubbo
BillKu38 分钟前
VS Code HTML CSS Support 插件详解
前端·css·html
xixixin_44 分钟前
【React】中 Body 类限定法:优雅覆盖挂载到 body 的组件样式
前端·javascript·react.js
换日线°1 小时前
NFC标签打开微信小程序
前端·微信小程序