Javascript ES6“从导入导出*”?

Javascript ES6“从导入导出*”?,javascript,ecmascript-6,babeljs,Javascript,Ecmascript 6,Babeljs,是否有一种使用ES6、ES7或babel的语法可以让我轻松地将多组子文件捆绑在一起 例如,给定: ./action_creators/index.js ./action_creators/foo_actions.js ./action_creators/bar_actions.js 让index.js导入foo和bar操作,然后重新导出它们,这样我就可以 import {FooAction, BarAction} from './action_creators/index.js' 如果要更改

是否有一种使用ES6、ES7或babel的语法可以让我轻松地将多组子文件捆绑在一起

例如,给定:

./action_creators/index.js
./action_creators/foo_actions.js
./action_creators/bar_actions.js
让index.js导入foo和bar操作,然后重新导出它们,这样我就可以

import {FooAction, BarAction} from './action_creators/index.js'

如果要更改将对象本身组织到的文件,我不想记住/更改引用

是,ES6支持直接导出导入的模块

export { name1, name2, …, nameN } from …;

export {FooAction, BarAction} from './action_creators/index.js'
export {default} from './something';
export {default as foo} from './something';
export {foo as default} from './something';
export {foo} from './something';
export {foo as bar} from './something';

您还可以使用
*
语法重新导出导入模块的所有导出内容

export * from …;

export * from './action_creators/index.js';


默认值导出为默认值

export { name1, name2, …, nameN } from …;

export {FooAction, BarAction} from './action_creators/index.js'
export {default} from './something';
export {default as foo} from './something';
export {foo as default} from './something';
export {foo} from './something';
export {foo as bar} from './something';

默认值导出为命名

export { name1, name2, …, nameN } from …;

export {FooAction, BarAction} from './action_creators/index.js'
export {default} from './something';
export {default as foo} from './something';
export {foo as default} from './something';
export {foo} from './something';
export {foo as bar} from './something';
命名导出为默认值

export { name1, name2, …, nameN } from …;

export {FooAction, BarAction} from './action_creators/index.js'
export {default} from './something';
export {default as foo} from './something';
export {foo as default} from './something';
export {foo} from './something';
export {foo as bar} from './something';
命名导出为命名

export { name1, name2, …, nameN } from …;

export {FooAction, BarAction} from './action_creators/index.js'
export {default} from './something';
export {default as foo} from './something';
export {foo as default} from './something';
export {foo} from './something';
export {foo as bar} from './something';
命名导出为重命名

export { name1, name2, …, nameN } from …;

export {FooAction, BarAction} from './action_creators/index.js'
export {default} from './something';
export {default as foo} from './something';
export {foo as default} from './something';
export {foo} from './something';
export {foo as bar} from './something';

这对我来说是有效的
export{defaultasfoo}from./foo'。这不起作用
从“/something”
将*导出为某物。有什么想法吗?@Qwerty您目前无法像那样导出命名名称空间。请参阅,以了解其建议。在此期间,您可以做的一件事是:“`import*as something from./something';export{Something}``如果
export*from…
的后续两行以相同的名称导出命名函数,会发生什么情况?我的意思是,如果
从'a'导出*
export*from'b'
,这两个
a
b
都定义了一个同名函数并将其导出,例如:
export function fn(){…}
…我来这里是想知道为什么我不能将
export*用作来自…
的东西。。。。哈哈哈如何
export*from./something'