【ES6】模块化语法(默认、按需导入import导出export的操作)

简介: ES6模块化语法(默认、按需导入导出的操作)

本文速览:

e5cb53077fd24125b45bf57507230c87.png

为什么需要模块化?

因为我们一个文件不是每一个都需要引入使用,这样的话更能节约资源,提高响应速度

前期准备工作:

①先在我们的html页面引入script type类型为module与引入我们的js文件

①左侧为我的项目结构 index.js与tool.js两个平级的js文件

b1b1b21a2e6e4857989c3e356553f7f9.png

一、导出操作

1.默认导出

export default {

需要导出的变量名

}

①在我们的tool.js中写入信息

const name = '张三'
const age = 20
const sex = '男'
const eat = ()=>{
  console.log('吃东西')
}
// 注意点: 默认导出只能导出一次
export default {
  name,age,eat
}

②我在index.js文件中导入我们从tool.js获取的文件 (后面会讲导入语法)

import  info from './tools.js'
console.log(info)

③浏览器控制台查看

97b217788aa44676ab5d19818d4b68dc.png

2.按需导出

①我们在tool.js文件中写入信息

// 2.按需导出
// 注意点: 可以导出多次,必须遵守下面的规范导出
export const username = 'admin'
export const password = '123456'
export const add =(a,b)=>{
  console.log(a+b);
  }

②我们在index.js文件中引入(后面会讲导入语法)

import { username as uname,password as pwd } from './tools.js';
console.log(uname,pwd);
import{ add as ADD} from './tools.js'
ADD(1,2)

③浏览器控制台查看

e7df42c9c8824fb4bffe2b46a6a560bc.png

二、导入操作

1.默认导入

import 变量名 from '文件路径',导入变量名可以 自定义

①在index.js文件中默认导入

import  info from './tools.js'
console.log(info);//比如这里我将tool引入的信息叫做info

②在tool.js中导出

const name = '张三'
const age = 20
const sex = '男'
const eat = ()=>{
  console.log('吃东西')
}
// 1.默认导出
// 注意点: 默认导出只能导出一次
export default {
  name,age,eat
}

③浏览器控制台可查看

84eac69a130b49e29857884f59cfb627.png

2.按需导入

import {变量名可以as 新的变量名} from '文件路径'

①先在index.js文件中写入需要导入的信息(可通过as自定义变量名)

// 2.按需导入 import {变量名} from '文件路径'
// 导入变量名不可以 自定义, 需要和导出的变量名一致,自定义变量名:  变量名 as 自定义变量名
import { username as uname,password as pwd } from './tools.js';
console.log(uname,pwd);
import{ add as ADD} from './tools.js'
ADD(1,2)

②在tools.js文件中写入需要导出的信息

按需导出
// 注意点: 可以导出多次,必须遵守下面的规范导出
export const username = 'admin'
export const password = '123456'
export const add =(a,b)=>{
  console.log(a+b);
  }

③浏览器控制台可查看

e7df42c9c8824fb4bffe2b46a6a560bc.png

现在回头看下第一张思维导图,我相信你一定更加掌握~~~


相关文章
|
5月前
|
XML 数据格式 Python
Python的`import`用于加载模块,基础形式是`import module`,全量导入
【6月更文挑战第23天】Python的`import`用于加载模块,基础形式是`import module`,全量导入;`from module import name`选择性导入部分,减少命名空间污染;`from module import *`导入所有(不推荐),易引发冲突。别名导入如`from math import sqrt as square_root`可避免冲突。包导入用`.`,如`import xml.etree.ElementTree as ET`。
64 8
|
6月前
|
JavaScript 前端开发
ECMAScript标准的两种语法--默认导出导入与命名式导出导入
ECMAScript标准的两种语法--默认导出导入与命名式导出导入
|
JavaScript
面试题-TS(五):TypeScript 中的模块是什么?如何导入和导出模块?
在TypeScript中,模块(Modules)是一种用于组织和管理代码的概念。模块提供了一种封装代码的方式,允许我们将相关的功能和数据组织在一起,实现代码的可重用和可维护。
【vue2小知识】实现store中modules模块的封装与自动导入
store仓库中分模块时的需要每次导入index的问题
【vue2小知识】实现store中modules模块的封装与自动导入
5.ES6模块导出导入
5.ES6模块导出导入
78 0
|
JavaScript 前端开发 开发者
ES6模块化与导出(export)导入(import)的用法
1.ES6模块化的介绍 在 ES6 模块化规范诞生之前,JavaScript 社区已经尝试并提出了 AMD、CMD、CommonJS 等模块化规范。 但是,这些由社区提出的模块化标准,还是存在一定的差异性与局限性、并不是浏览器与服务器通用的模块化 标准,例如: ⚫ AMD 和 CMD 适用于浏览器端的 Javascript 模块化 ⚫ CommonJS 适用于服务器端的 Javascript 模块化 太多的模块化规范给开发者增加了学习的难度与开发的成本。因此,大一统的 ES6 模块化规范诞生了!
264 1
ES6模块化与导出(export)导入(import)的用法
“UnwrapRef“ 是一种类型,在同时启用了 “preserveValueImports“ 和 “isolatedModules“ 时,必须使用仅类型导入进行导入。
“UnwrapRef“ 是一种类型,在同时启用了 “preserveValueImports“ 和 “isolatedModules“ 时,必须使用仅类型导入进行导入。
1011 0
“UnwrapRef“ 是一种类型,在同时启用了 “preserveValueImports“ 和 “isolatedModules“ 时,必须使用仅类型导入进行导入。
ES6模块化的导入和导出
ES6模块化的导入和导出
117 0
|
JavaScript
ES6中模块导入遇到的问题及其解决办法
今天遇到了一个小的问题,我们来看一下,情况是这样的:在没遇到过这个坑之前,如果需要引入一个模块,我通常的做法都是在HTML文件中内嵌一个script标签,并通过指定 type="module" 来实现;然而今天我却没有按照往常这样做,而是指定两个js文件,其中一个文件通过 export 暴露出需要的变量和函数,在另一个文件中通过 import 导入,结果就遇到了报错,来给各位看下报错信息:
ES6中模块导入遇到的问题及其解决办法