ES6模块:传递导出符号(即从导入的文件)

时间:2015-08-20 04:19:21

标签: import ecmascript-6

假设我创建了一个包含多个文件的ES6库,但其根文件包含所有顶级定义。我怎么能实现这样的例子:

lib/foo/sub.js
export class Sub{}

lib/main.js
import { Sub } from './foo/sub'

client.js
# This doesn't work.
import { Sub } from 'lib/main'

即,客户端只从顶级文件导入(因为子级别是实现细节 - 稍后可能会封装到一个缩小的文件中(但在开发时是多个文件)。

1 个答案:

答案 0 :(得分:5)

您必须重新导出:

export { Sub } from './foo/sub';

您可以像这样直接重新导出:

export { Sub as MySub } from './foo/sub';

您可以在导出时重命名:

export * from './foo/sub';

或者重新导出所有内容:

Schema#set(key, [value])

Sets/gets a schema option.

Parameters:

key <String> option name
[value] <Object> if not passed, the current option value is returned