导入 module 和导入模块之间的区别 [重复]

Posted

技术标签:

【中文标题】导入 module 和导入模块之间的区别 [重复]【英文标题】:Difference between import module and import module [duplicate]导入 module 和导入模块之间的区别 [重复] 【发布时间】:2018-03-19 00:17:46 【问题描述】:

我在 ES6 中看到了以下两种从另一个模块导入代码的变体:

import module  from "./Module"

import module from "./Module"

其中module是文件中定义的ES6类

模块.js

这两个import语句有什么区别?

【问题讨论】:

【参考方案1】:

不同之处在于它的导出方式。

export default const myModule = 

基本上它说“这是默认导出”。你用

导入这个
import myModule from 'module'

另一种方式是可以像这样导出多个入口点:

export const myModule1 = 
export const myModule2 = 

你用

导入这些
import myModule1, myModule2 from 'module'

如果同时导出默认入口点和命名入口点,您可以这样做:

import myModule, myModule1, myModule2 from 'module'

这似乎不完全合乎逻辑,通常包作者应该解释他们的模块应该如何导入。如果您是作者,这将对您有所帮助

【讨论】:

上次导入时缺少逗号【参考方案2】:

第一种情况

import module  from "./Module"

您正在从一个模块导入单个导出并在当前范围内插入“模块”。在Module.js 文件中,您必须命名为exports:

export  module, module2 ; 

请注意有两个命名导出,但您只导入一个。

在第二个示例中,您正在导入默认导出:

import module from "./Module"

在您的Module.js 文件中导出可能如下所示:

导出默认模块3;

请注意,您可以使用不同的名称导入默认值。

【讨论】:

以上是关于导入 module 和导入模块之间的区别 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

导入Python模块的区别[重复]

尝试通过路径导入模块失败[重复]

Python:导入模块[重复]

Typescript 从节点模块导入 ts 文件

导入模块的最佳方法Python [重复]

完整包导入.*和指定类导入java之间的区别? [复制]