更正语法以在ES6中导入常量

时间:2018-08-28 00:29:01

标签: javascript ecmascript-6

给出以下模块,如何导入常量模块并避免包含默认属性:

// constants.es6
export default {
    foo: 'foo',
    bar: 'bar'
}

// anotherModule.es6
import * as constants from './constants';

得出constants.default.foo

我似乎无法正确使用语法以constants.foo结尾

3 个答案:

答案 0 :(得分:4)

import constants from './constants'

console.log(constants.foo, constants.bar)

如果您想直接从./constants导入常量

constants.js:
export const foo = 'foo'
export const bar = 'bar'

anotherModule.js:
import {foo, bar} from './constants'

console.log(foo,bar)

答案 1 :(得分:2)

您不应使用对象来定义常量。调用代码是免费的constants.foo = 42;和更改值。

使用

export const foo = 'foo';
export const bar = 'bar';

相反。

然后,您拥有的import * as constants from './constants';导入语句也将工作。


如果您不想更改定义常量的方式,那么您的问题是“如何导入默认导出” ,这些问题将得到解答:

答案 2 :(得分:0)

export default {
foo: 'foo',
bar: 'bar'
}

// anotherModule.es6
import const from './constants';

Then 
const.foo