export default
导出匿名函数,导入时自命名
// export-default.js
export default function () {
console.log('foo');
}
// import-default.js
import customName from './export-default';
customName(); // 'foo'
导出非匿名函数,模块外和导出匿名函数表现相同
// export-default.js
export default function foo() {
console.log('foo');
}
// 或者写成
function foo() {
console.log('foo');
}
export default foo;
本质:export default就是输出一个叫做default的变量或方法,然后系统允许你为它取任意名字
// modules.js
function add(x, y) {
return x * y;
}
export {add as default};
// 等同于
// export default add;
// app.js
import { default as foo } from 'modules';
// 等同于
// import foo from 'modules';
// 正确
// 导出了default接口
export default 42;
// 报错
// 导出要指定对外接口,
export 42;