当前位置: 首页 > news >正文

ES模块导入、导出学习笔记

ES模块导入、导出学习笔记

  • 1、命名导出、导入
    • 1.1、声明时直接导出
    • 1.2、先声明,再导出
  • 2、默认导出
    • 2.1、声明时直接导出
    • 2.2、先声明,再导出
  • 3、命名导出 VS 默认导出
    • 3.1、命名导出
    • 3.2、默认导出
    • 3.3、同时使用
  • 4、使用 as 关键字
    • 4.1、在 import 中使用 as
    • 4.2、在 export 中使用 as
  • 5、动态导入

1、命名导出、导入

1.1、声明时直接导出

  • 导出
/*** 定义一个变量*/
export const src = "我是一个字符串";/*** 定义一个函数*/
export const func = function () {console.log("我是一个函数");
};
  • 导入
// 分别导入
import { src, func } from "@/common/index";onMounted(() => {// 打印变量console.log(src, "打印变量");// 调用函数func();
});

1.2、先声明,再导出

  • 导出
/*** 定义一个变量*/
const src = "我是一个字符串";/*** 定义一个函数*/
const func = function () {console.log("我是一个函数");
};export { src, func };
  • 导入
// 分别导入
import { src, func } from "@/common/index";onMounted(() => {// 打印变量console.log(src, "打印变量");// 调用函数func();
});

2、默认导出

2.1、声明时直接导出

  • 默认导出跟命名导出的区别:
    • 默认导出比命名导出多一个default关键字
  • 默认导出可以省略函数名
  • 导出
/*** 定义一个函数*/
export default function func() {console.log("我是一个函数");
}
  • 导入
// 导入默认导出的方法,方法名随便
import func from "@/common/index";onMounted(() => {// 调用函数func();
});

2.2、先声明,再导出

  • 导出
/*** 定义一个变量*/
const src = "我是一个字符串";/*** 定义一个函数*/
function func() {console.log("我是一个函数");
}export default { src, func };
  • 导入
import common from "@/common/index";onMounted(() => {// 调用变量console.log(common.src);// 调用函数common.func();
});

3、命名导出 VS 默认导出

3.1、命名导出

  • 可以导出多个值,并且可以选择性导入,灵活性更好
  • 指定了确切的名字,便于代码追踪和维护
  • 适合有多个功能的模块

3.2、默认导出

  • 简化了单个值的导入和导出,可以让代码更加简洁
  • 适合功能单一的模块

1、 命名导出:导入的时候需要花括号({})。
2、 默认导出:导入的时候不需要花括号({})。

3.3、同时使用

  • 导出
export const common = {src: "我是一个字符串",func: function () {console.log("我是一个函数");},
};export default function func2() {console.log("我是一个默认函数2");
}
  • 导入
import func2, { common } from "@/common/index";onMounted(() => {// 调用变量console.log(common.src);// 调用函数common.func();// 调用函数func2();
});

4、使用 as 关键字

  • 功能:用于重命名导入或导出的值
  • 使用场景:解决名称冲突、适用当前上下文,提高可读性

4.1、在 import 中使用 as

  • 假设 common 中 func 函数是命名导出
import { func as sayHandle }  from '@/common/index'
  • 假设 common 中 func 函数是默认导出
import { default as sayHandle } from '@/common/index'
  • 将 module 中的所有导出内容聚合到 module 对象中
import * as module from '@/common/index'// 使用方法
console.log(module.func())

4.2、在 export 中使用 as

function func(name){return `Hello,${name}!`
}export { func as sayHandle }// 或者将 func 函数默认导出
// 和 == export default func == 是一样的效果
export { func as default }

5、动态导入

  • 示例1:
import("@/common/index").then((module)=>{console.log(module.func())
})
  • 示例2:
const module = await import("@/common/index")
consolg.log(module.func())

相关文章:

ES模块导入、导出学习笔记

ES模块导入、导出学习笔记 1、命名导出、导入1.1、声明时直接导出1.2、先声明,再导出 2、默认导出2.1、声明时直接导出2.2、先声明,再导出 3、命名导出 VS 默认导出3.1、命名导出3.2、默认导出3.3、同时使用 4、使用 as 关键字4.1、在 import 中使用 as4…...

Bagging: 数量,而不是质量。

由 AI 生成:过度简化的树、引导聚合、集成方法、弱学习器、减少方差 集成方法 — 数量,而不是质量 一、说明 机器学习中的集成方法是指组合多个模型以提高预测性能的技术。集成方法背后的基本思想是聚合多个基础模型(通常称为弱学习器&#…...

维信小程序禁止截屏/录屏

一、维信小程序禁止截屏/录屏 //录屏截屏,禁用wx.setVisualEffectOnCapture({visualEffect:hidden});wx.setVisualEffectOnCapture(Object object) 测试安卓手机: 用户截屏,被禁用 用户录屏,录制的是空白内容/黑色内容的视频。 二、微信小…...

不同大模型代码解释对比

包含ChatGPT,讯飞星火,通义千问,腾讯元宝,智谱清言。 目标是想让大模型解释一个用于预处理人体骨骼关节三维坐标数据样本进行填补空帧的Python函数。 def f_padding_none(data):s data.copy()# print(pad the null frames with…...

Python函数的编写

函数实现 首先,我们来看一个简单的Python函数,它使用os和os.path模块来遍历当前目录及其所有子目录,并列出所有文件的名称。 import os def list_all_files(startpath): """ 列出指定路径(包括其子目录&#xff…...

Linux下的常用命令分享 二(ubuntu 16.04)

1、ls -l的返回值说明 以图中为例,说明对于cc.txt.tar.gz文件,文件拥有者即创建该文件的人可以对该文件进行读写操作,但不能执行该文件,文件组成员用户可以进行读写操作,但不能执行该文件,其他用户只可读&…...

FPGA随记——OSERDESE2和IERDESE2

http://t.csdnimg.cn/yNvxf---看这个篇吧 这个挺好的 OSERDESE2 模块要求复位信号高电平有效,并且 需要将异步复位信号同步到串行时钟域。 除了用原语调用,还可以用High Speed SelectIO Wizard这个IP 进行调用 针对具体select IO这个IP的使用和介绍&…...

Xmind思维导图领衔,三款常备神器助你2024年思维升级!

到了2024年,信息多得让人眼花,新东西学都学不完。要在这么多信息里保持清醒,快速学东西,对大家来说是个考验。好在,科技帮了我们大忙,比如思维导图软件,它们直观又灵活,帮我们提高思…...

SEO服务值得吗?提升销售和营销策略的5种方法

在不久之前,搜索引擎优化(SEO)通常被视为一个独立的实体,企业把提升排名和推动自然流量作为重点。随后,AI登场了,让每个人都忙于弄清“游戏”的新规则,一些公司因此质疑SEO服务是否值得。答案是…...

传统CV算法——角点特征点提取匹配算法实战

harris角点 角点可以是两个边缘的角点;角点是邻域内具有两个主方向的特征点;角点通常被定义为两条边的交点,更严格的说,角点的局部邻域应该具有两个不同区域的不同方向的边界。或者说,角点就是多条轮廓线之间的交点。…...

小米电视使用adb 卸载自带应用教程

小米电视使用ADB(Android Debug Bridge)卸载自带应用的教程如下。请注意,在操作过程中请确保谨慎行事,避免误删系统关键应用导致电视无法正常使用。 准备工作 下载ADB工具: 在电脑上下载ADB工具。ADB是Android Debug …...

编译FFmpeg动态库

编译FFmpeg动态库 环境 macOS High SierraFFmpeg 4.3android-ndk-r21b 编译so库 下载FFmpeg4.3源代码,进入源码目录创建build_android.sh脚本,ffmpeg从4.0起新增了target-osandroid,所以不用再修改configure文件。 注意: ndk…...

yum的基本使用方法

yum(全称 "Yellow dog Updater Modified")是基于RPM包管理器的软件包管理系统,主要用于Fedora和Red Hat系列的Linux发行版中。它允许用户安装、更新、删除以及搜索软件包,并能自动处理软件包之间的依赖关系。下面是一些…...

Nginx+Keepalive集群实战

随着Nginx在国内的发展潮流,越来越多的互联网公司都在使用Nginx,Nginx高性能、稳定性成为IT人士青睐的HTTP和反向代理服务器。 Nginx负载均衡一般位于整个网站架构的最前端或者中间层,如果为最前端时单台Nginx会存在单点故障,也就…...

[数据集][目标检测]街道乱放广告牌检测数据集VOC+YOLO格式114张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):114 标注数量(xml文件个数):114 标注数量(txt文件个数):114 标注类别…...

腾讯云的免费ssl证书过期后不占用免费额度

我申请了三张免费证书,两张过期了,已使用的数量还是1,说明已过期的不占免费额度,这样的话,只要每三个月重新申请就能一直用免费证书了。 下证很快,第一张一分钟以内,第二张大概5分钟左右。 原来…...

MySQL学习(DDL,DML,DQL)基本语法总结

DDL 使用某个数据库 use world;展示表 show tables;创建表 create table student(id int,name varchar(10),age int,gender varchar(10));删除表 drop table student; 修改表结构 查看表结构 desc student;添加列 alter table student add dept varchar(10);修改列名和类型…...

JAVA学习-练习试用Java实现“单词反转”

问题: 随便输出一个字符串 String str "45abc,defg"; 里面含有 abc,de,fg 三个单词 怎么处理能让单词反转,其他顺序不变呢 输出 “45cba,edgf”; 解答思路: 以下是使用 Java 实现的单词反转程序&#xff1a…...

【MySQL】深圳大学数据库实验一

目录 一、实验目的 二、实验要求 三、实验设备 四、建议的实验步骤 4.1 使用SQL语句创建如上两张关系表 4.2 EXERCISES. 1 SIMPLE COMMANDS 4.3 EXERCISES 2 JOINS 4.4 EXERCISES 3 FUNCTIONS 4.5 EXERCISES 4 DATES 五、实验总结 5.1 数据库定义语言(DDL…...

接口测试 —— 如何设计高效的测试用例!

摘要: 随着互联网应用的日益复杂化,接口测试已成为保证软件质量不可或缺的一部分。本文将探讨如何有效地设计接口测试用例,并提供实用的建议和示例。 一、引言 接口测试(API测试)是确保系统各部分之间交互正确性的关键…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...