繁体   English   中英

ES6中的子模块是什么?

[英]What are sub-modules in ES6?

假设我有一个名为a.js的ES6模块。 a.js模块导入b.jsc.js模块。 同样, b.js导入d.jsc.js导入e.js

现在我想知道的是哪些是子模块和超级模块。

我觉得b.jsc.js是子模块a.js 但我不确定。 真的很困惑。 请帮忙。

提前致谢。

在ES6模块上下文中,所有模块的创建方式都是相等的,这意味着您可以通过创建适当的文件夹结构将它们分组到项目中。 就像是:

src/app.js

src/specificModule/specificModuleA.js

src/common/commonModuleB.js
src/common/commonMofuleC.js

...

话虽如此,如果您使用某种构建工具进行开发,在这种情况下,我正在考虑Webpack ,它可以为您自动将常用功能提取到常用模块中。 它通过分析源文件的依赖关系树来实现。

但是Webpack是一个非常复杂的工具,因此就目前而言,仅在适当的文件夹结构中构建项目源就足够了。

ES6中没有子模块这样的概念。 只有模块的概念。 Module是程序中一个单元的抽象,ES6为此引入了新的语法

子模块是该模块的方便名称,由其他模块包含。 在这里重要的是,子模块是由称为contains的关系而不是由关系imports确定的 在ES6中,子模块用作抽象概念。

在ES6中,一个文件就是一个模块。 因此,让我们以以下项目结构为例:

myapp/
├── index.es6
└── lib
    ├── index.es6
    ├── backend.es6
    └── validator.es6

在这里您可以说myapproot模块 它包含一个子模块lib 模块myapp在文件index.es6定义。 myapp模块的子模块lib (或仅myapp/lib模块)包含两个子模块backendvalidator

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM