Ecmascript 6 ES6模块导出和导入

Ecmascript 6 ES6模块导出和导入,ecmascript-6,es6-modules,Ecmascript 6,Es6 Modules,foo.js const a = 1 const b = 2 const c = 3 let d = 4 export default { a, b } export { c } export d 导出的a、b、c、d之间有什么区别 如何正确导入它们 Babel编译是否会影响它?您只能导出声明(默认导出除外),这意味着: export d; 无效,必须是: export const d = 1; 如何正确导入它们 您可以以相同的方式导入c和d,只有对象属性a和b不能直接访问,因为您不

foo.js

const a = 1
const b = 2
const c = 3
let d = 4

export default { a, b }
export { c }
export d
导出的
a、b、c、d之间有什么区别

如何正确导入它们


Babel
编译是否会影响它?

您只能
导出
声明(默认导出除外),这意味着:

 export d;
无效,必须是:

 export const d = 1;
如何正确导入它们


您可以以相同的方式导入
c
d
,只有对象属性
a
b
不能直接访问,因为您不能在import语句中分解对象,因此您必须在新的行中分解它们,这非常难看。引用Bergi的话:“不要那样做”,而是使用
c
d

您只能
导出
声明(默认导出除外),这意味着:

 export d;
无效,必须是:

 export const d = 1;
如何正确导入它们


您可以以相同的方式导入
c
d
,只有对象属性
a
b
不能直接访问,因为您不能在import语句中分解对象,因此您必须在新的行中分解它们,这非常难看。引用Bergi的话:“不要那样做”,而是使用
c
d

export d
似乎是无效的语法,
a
b
变量没有导出。您正在创建一个对象,并将其导出到
default
标识符下。不要这样做。
export d
似乎无效语法未导出
a
b
变量。您正在创建一个对象,并将其导出到
default
标识符下。不要那样做。