ES6 模块:重新导出为对象
ES6 module: re-export as object
我有一个导出一些函数的模块A:
// moduleA.js
export function f1() {...}
export function f2() {...}
有什么方法可以重新导出模块 B 中模块 A 的所有导出并使其看起来像一个对象:
// moduleB.js
export * as a from 'moduleA'; // pseudo code, doesn't work
以便我可以这样使用它?
// main.js
import {a} from 'moduleB';
a.f1();
a.f2();
暂不支持该语法,但有 a proposal for it.
您现在可以将它与 Babel.js 一起使用,或者只需执行以下操作:
import * as a from '...';
export {a};
file1.js
export let uselessObject = {
con1 : function () {
console.log('from file1.js')
}
}
file2.js
import { uselessObject } from './file1.js'
uselessObject.con2 = function(){
console.log('from file2.js ')
}
export { uselessObject } from './file1.js'
Index.js
import { uselessObject } from './file2.js'
uselessObject.con1()
uselessObject.con2()
输出
from file1.js
from file2.js
我有一个导出一些函数的模块A:
// moduleA.js
export function f1() {...}
export function f2() {...}
有什么方法可以重新导出模块 B 中模块 A 的所有导出并使其看起来像一个对象:
// moduleB.js
export * as a from 'moduleA'; // pseudo code, doesn't work
以便我可以这样使用它?
// main.js
import {a} from 'moduleB';
a.f1();
a.f2();
暂不支持该语法,但有 a proposal for it.
您现在可以将它与 Babel.js 一起使用,或者只需执行以下操作:
import * as a from '...';
export {a};
file1.js
export let uselessObject = {
con1 : function () {
console.log('from file1.js')
}
}
file2.js
import { uselessObject } from './file1.js'
uselessObject.con2 = function(){
console.log('from file2.js ')
}
export { uselessObject } from './file1.js'
Index.js
import { uselessObject } from './file2.js'
uselessObject.con1()
uselessObject.con2()
输出
from file1.js
from file2.js