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

命名导出和默认导出的用法区别

背景:

1、在编写代码的时候,build打包报警告,使用GPT询问之后得到命名导出和默认导出的区别,因此有想法去了解下命名导出和默认导出的用法区别。

export 'default' (imported as 'store') was not found in '@/content-scripts/store' (possible exports: store)

 

 结论:

1. 命名导出(Named Export)

  • 使用 import { store } 是导入一个 命名导出 的模块成员。
  • 命名导出允许从一个文件中导出多个不同的成员,每个成员都需要在导入时用花括号指定其名字。
命名导出示例:

store.js

// 导出多个命名成员
export const store = {// store 的内容
};export const anotherStore = {// anotherStore 的内容
};

导入方式:

// 使用花括号导入指定的命名导出
import { store, anotherStore } from '@/content-scripts/store';

在这种情况下,storeanotherStore明确命名的导出,并且可以同时导入多个命名导出。

2. 默认导出(Default Export)

  • 使用 import store 是导入一个 默认导出 的模块成员。
  • 默认导出文件中只能有一个导出项,不需要花括号,并且导入时可以自定义导入名称(即导入时的名字不必与导出时的名字相同)。
默认导出示例:

store.js

// 仅导出一个默认成员
const store = {// store 的内容
};export default store;

导入方式:

// 不使用花括号,并且可以重命名导入的内容
import store from '@/content-scripts/store';

在这种情况下,store默认导出,文件中只能有一个默认导出,而且导入时可以随意命名(例如你可以用 import myStore from '@/content-scripts/store' 这样的导入)。

3. 关键区别总结

  • import { store }: 用于导入 命名导出,并且必须与导出的名字完全一致,且可以同时导入多个命名成员。
  • import store: 用于导入 默认导出,只需导出一个成员,导入时可以重命名。


http://www.mrgr.cn/news/37072.html

相关文章:

  • CSS布局中的定位
  • UE学习篇ContentExample解读------Blueprints Advanced-上
  • 828华为云征文|Flexus云服务器X实例实践:安装Tasks.md任务管理工具
  • 安装了 cursor 之后,我写代码不用手了
  • C++面试题第一弹
  • CleanMyMac X 评价、介绍、使用教学|Mac系统最推荐的系统优化和清理软件工具!
  • 平衡、软技能与持续学习
  • Linux防火墙-什么是防火墙
  • 【毕业论文+源码】如何使用Spring Boot搭建一个简单的篮球论坛系统
  • 常见的TTL,RS232,RS485,IIC,SPI,UART之间的联系和区别
  • ⾃定义类型:结构体
  • 龙年国庆专属姓氏头像
  • 【Java】异常处理 —— Throwable 及其应用
  • TCN-Transformer+GRU多变量时间序列预测(Matlab)
  • C# 利用simd比较两个文件是否相等(高性能)
  • Python画笔案例-065 海龟绘图艺术画
  • Selenium入门
  • 一篇文章讲清楚synchronized关键字的作用及原理
  • 初识C语言(三)
  • Redis一些简单通用命令认识常用数据类型和编码方式认识Redis单线程模型