在ES 6模块中重新导出默认值

时间:2016-10-12 13:01:02

标签: javascript ecmascript-6 babeljs es6-modules

在ES6中,是否可以缩短以下代码。我有App.js个文件和index.js

index.js

import App from './App';

export default App;

像这样的东西

index.js

export default App from './App.js'

5 个答案:

答案 0 :(得分:74)

如果您使用proposal-export-default-from Babel pluginstage-1 preset的一部分),则可以使用以下代码重新导出默认值:

original[0, 0, :] = [0 1 3]

new[0, 0, :, :] = [[0 1]
                  [0 3]]

有关详细信息,请参阅the ECMAScript proposal

另一种方式(没有这个插件)是:

export default from "./App.js"

答案 1 :(得分:1)

private static IEdmModel GetEdmModel()
    {
        var builder = new ODataConventionModelBuilder();
        builder.EnableLowerCamelCase();                   // <-- add this line
        ...

Babel 7(带有@babel/preset-react)可以改变以下内容:

import App from './App';

export default App;

相关讨论:

答案 2 :(得分:1)

唯一可行的解​​决方案是:

import App from './App';

export default App;

如果你像这样导出你的模块

export { default as App } from './App.js';

那么它就不再是默认导出了,如果您尝试将其作为默认导入导入,则会出现错误。

答案 3 :(得分:0)

这与之前的答案有些重复,但为了澄清两个选项之间的区别:

1。默认导出

(这似乎是OP想要的)

export { default } from './App'

// in a different file
import App from './index'

2。命名为导出

export { default as App } from './App'

// in another file
import { App } from './index'

当vsync处于answer状态时,它们将与react一起使用。

答案 4 :(得分:0)

import App from './App';
export default (App);

这在默认的“create-react-app”应用程序中对我有用