在带有多个文件的ES6模块中创建名称空间。馊主意?

龙泽

我有一个库,其中包含多个文件,这些文件当前通过Gulp连接到一个文件中。这些文件中的每一个都设置主库对象的属性Rune,因此color.js将set Rune.Colormath.jswill setRune.Math等等。

这显然是老派了,所以我想使用ES6模块重写所有内容,并使用Gulp,Browserify和Babel创建已编译的包。

但是,最后我将获得一个编译的库,其中的命名空间已消失,人们将需要import color from "rune"使用颜色模块。

所以,我正在考虑做这是我的主要模块文件:

import color from "./color"

const Rune = {
  Color: color
}

export default Rune;

这是一个可怕的主意吗?该模块已经在主文件中使用,所以我看不到它有任何缺点。

费利克斯·克林(Felix Kling)

这是一个可怕的主意吗?

有一个到您的库的入口点,并从那里导出所有方法,这不是一个坏主意。但是,我坚持使用ES6进出口:

// Rune.js
export {default as color} from './color';

现在客户可以使用:

import {color} from 'rune';

或者

import * as Rune from 'rune';

导入他们需要的东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ES6模块的名称空间

来自分类Dev

Browserify-具有ES6模块以及多个源文件和导出的独立版本

来自分类Dev

使用嵌套类在ES6中模拟名称空间

来自分类Dev

带有ES6模块的角度测试用例中的未知提供程序

来自分类Dev

带有ES6模块的角度测试用例中的未知提供程序

来自分类Dev

在ES6中,该模块将导致多个网络调用,因为无法在单个文件中定义2个模块

来自分类Dev

带有子模块导入的名称空间

来自分类Dev

如何在全局范围内使用ES6模块代替名称空间?

来自分类Dev

如何使用带有Mongoose和ES6 Promise的Graphql中的find解析多个记录

来自分类Dev

Javascript ES6模块名称解析

来自分类Dev

在带有或不带有箭头的ES6中创建顶级功能的优点/缺点是什么?

来自分类Dev

reactjs中带有es6映射的意外令牌

来自分类Dev

为什么Angular构建会创建带有'es5'和'es2015'但没有'es6'(或根本没有后缀)的文件?

来自分类Dev

打开(下载)名称中带有多个点的文件

来自分类Dev

如何在多个文件的输出打字稿中优化模块名称空间,使用gulp

来自分类Dev

导入类并使用带有Babel Transpiler的es6模块调用静态方法

来自分类Dev

带有ES6模块的d3 v4.0自定义构建

来自分类Dev

如何使用Mocha测试ES6模块(带有导入功能)?

来自分类Dev

如何发布带有commonjs和es6版本的NPM模块?

来自分类Dev

带有少量代码行的es6模块。我应该出口什么?

来自分类Dev

如何从多个TypeScript文件构建单个ES6模块(用于前端库)

来自分类Dev

ES6名称空间导入:“ this”的行为

来自分类Dev

ES6名称空间导入:“ this”的行为

来自分类Dev

从ES6中的模块调用函数

来自分类Dev

我可以在es6模块中更改导出的名称吗?

来自分类Dev

在Linux中创建多个具有相同名称的文件

来自分类Dev

在Linux中创建具有相同名称的多个文件

来自分类Dev

单个模块中的Angular 1.x和es6多个常量

来自分类Dev

Python zipfile模块创建具有相同名称的多个文件

Related 相关文章

  1. 1

    ES6模块的名称空间

  2. 2

    Browserify-具有ES6模块以及多个源文件和导出的独立版本

  3. 3

    使用嵌套类在ES6中模拟名称空间

  4. 4

    带有ES6模块的角度测试用例中的未知提供程序

  5. 5

    带有ES6模块的角度测试用例中的未知提供程序

  6. 6

    在ES6中,该模块将导致多个网络调用,因为无法在单个文件中定义2个模块

  7. 7

    带有子模块导入的名称空间

  8. 8

    如何在全局范围内使用ES6模块代替名称空间?

  9. 9

    如何使用带有Mongoose和ES6 Promise的Graphql中的find解析多个记录

  10. 10

    Javascript ES6模块名称解析

  11. 11

    在带有或不带有箭头的ES6中创建顶级功能的优点/缺点是什么?

  12. 12

    reactjs中带有es6映射的意外令牌

  13. 13

    为什么Angular构建会创建带有'es5'和'es2015'但没有'es6'(或根本没有后缀)的文件?

  14. 14

    打开(下载)名称中带有多个点的文件

  15. 15

    如何在多个文件的输出打字稿中优化模块名称空间,使用gulp

  16. 16

    导入类并使用带有Babel Transpiler的es6模块调用静态方法

  17. 17

    带有ES6模块的d3 v4.0自定义构建

  18. 18

    如何使用Mocha测试ES6模块(带有导入功能)?

  19. 19

    如何发布带有commonjs和es6版本的NPM模块?

  20. 20

    带有少量代码行的es6模块。我应该出口什么?

  21. 21

    如何从多个TypeScript文件构建单个ES6模块(用于前端库)

  22. 22

    ES6名称空间导入:“ this”的行为

  23. 23

    ES6名称空间导入:“ this”的行为

  24. 24

    从ES6中的模块调用函数

  25. 25

    我可以在es6模块中更改导出的名称吗?

  26. 26

    在Linux中创建多个具有相同名称的文件

  27. 27

    在Linux中创建具有相同名称的多个文件

  28. 28

    单个模块中的Angular 1.x和es6多个常量

  29. 29

    Python zipfile模块创建具有相同名称的多个文件

热门标签

归档