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

相关推荐
ElasticPDF-新国产PDF编辑器4 分钟前
Angular 项目 PDF 批注插件库在线版 API 示例教程
前端·pdf·angular.js
hz.ts7 分钟前
Angular 国际化
javascript·ecmascript·angular.js
6武78 分钟前
Vue 数据传递流程图指南
前端·javascript·vue.js
jakeswang1 小时前
查询条件与查询数据的ajax拼装
前端·ajax
samuel9181 小时前
axios取消重复请求
前端·javascript·vue.js
三天不学习1 小时前
JiebaAnalyzer 分词模式详解【搜索引擎系列教程】
前端·搜索引擎·jiebaanalyzer
滿1 小时前
Vue 3 中按照某个字段将数组分成多个数组
前端·javascript·vue.js
安分小尧1 小时前
[特殊字符] 使用 Handsontable 构建一个支持 Excel 公式计算的动态表格
前端·javascript·react.js·typescript·excel
好_快1 小时前
Lodash源码阅读-baseClone
前端·javascript·源码阅读