如何在JavaScript中导出默认*?

时间:2017-04-03 13:07:13

标签: javascript

我想在文件中添加许多常量,如:

constants.js

export const FOO = 'foo'
export const BAR = 'bar'

我可以导入它们:

index.js

import { FOO, BAR } from './constants.js'

但是webpack警告我export default中找不到./constants.js,这也意味着我不能这样做:

import constants from './constants.js'

我试着去做

export default *

就像

一样
import * from './constants'

但它不起作用。那么有没有优雅的方式来代替以下?

export default { FOO, BAR }

3 个答案:

答案 0 :(得分:2)

如果您不想进行结构化导入,那么这些可能是您使用的两个最佳选择。

选项1

// constants.js
export const FOO = 'foo'
export const BAR = 'bar'


// index.js
import * as constants from './constants'
/*
 * constants = { FOO: 'foo', BAR: 'bar' }
 */

选项2

// constants.js
export default {
  FOO: 'foo',
  BAR: 'bar'
}

//index.js
import constants from './constants'

答案 1 :(得分:0)

将常量放在自己的常量目录中, 它有一个index.js:

export * from './constants';

然后它会起作用,我想

答案 2 :(得分:0)

将所有要导出的const设置在文件中: file.js

export const A;
export const B;
export const C;

从单个文件中导出它们:

export_file.js

export * from './file';

所以你可以全部导入它们:
import_file.js

import * from './export_file';