是否可以导出“;将*导入为“;ES2015
Is it possible to export the result of "import * as" in ES2015?
在ES2015中,可以将整个模块作为一个对象导入,该对象的属性是模块的导出:
import * as name from 'module';
我发现这对命名空间非常有用,并且一直在使用它。
还可以重新导出其他模块的导出:
export { name } from 'module'; // selectively
export * from 'other-module'; // indiscriminately
现在,我正试图以这种风格编写一个带有名称空间的库。在顶层模块中收集所有内容的直观方式如下:
export * as name from 'module';
但这似乎并不奏效;Babel和Rollup都拒绝了。
我可以将模块作为对象导入,通过迭代其键来创建克隆,然后导出,但它将只是一个普通的旧动态对象,因此我将失去Rollup提供的巨大优势。
那么,真的没有办法用声明性模块语法做到这一点吗?在我看来,这是没有任何借口的。
不,这只是ES6中遗漏的。不过,有一个第一阶段的提案可以添加这些内容,汇总将考虑实施它
在此之前,您需要使用两个声明和一个本地绑定,尽管不需要克隆对象:
import * as name from 'module';
export { name };
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何将JSON数据导入我的ejs模板
- 如何将不可变的js导入angular 2(alpha)
- 将数据从javascript文件导入VB.Net页面
- 缩短ES2015导入路径
- ES2015“导入”在带有--harmony_modules选项的节点v6.0.0中不起作用
- 使用 foreach js es2015 进行动态导入
- 如何在ES2015中将模块中的选定函数作为对象导入
- 在ES2015中导入主干模板文本
- es2015 模块语法,如何导入项目目录之外的文件
- 如何在 Ember.js 项目中导入 ES2015 JavaScript 模块
- Typescript 1.8 - ES2015 导入 js 文件
- ES2015 node.js中的可选导入
- 是否可以导出“;将*导入为“;ES2015
- 如何通过自调用方法为常规包添加ES2015导入支持
- 用rollupjs、es2015模块导入
- 如何有选择地导入ES2015模块函数,但要使用命名空间
- 在ES2015中使用复杂的名称导入和导出
- 枚举ES2015中的通配符导入
- 在使用es2015语法导入模块并将Babel编译为es5时出错