通过集合名称或零件名称导入集合

时间:2019-07-09 08:55:32

标签: javascript webpack ecmascript-6 es6-modules

以下作品完全可以

// libPart1.js
export default 'file part1.js';

// libPart2.js
export default 'file part2.js';

// lib.js
import libPart1 from './libPart1';
import libPart2 from './libPart2';

export default {
    libPart1, libPart2
}

// main1.js
import lib from './lib';

console.dir(lib.libPart1);
console.dir(lib.libPart2);

我还可以使用命名的导入:

// lib.js
export {default as libPart1} from './libPart1';
export {default as libPart2} from './libPart2';

// main2.js
import {libPart1, libPart2} from './lib';

console.dir(libPart1);
console.dir(libPart2);

尽管如此,我还是希望以lib.jsmain1.js都能正常工作的方式来编写main2.js

如果要紧的话,我正在使用webpack。

1 个答案:

答案 0 :(得分:1)

否,请勿默认导出对象文字。始终使用命名的导出。要使用method对象启用样式,请在导入模块的lib文件中使用 namespace import 。不要更改出口报关单。

main1.js

// lib.js
export {default as libPart1} from './libPart1';
export {default as libPart2} from './libPart2';

// main1.js
import * as lib from './lib';
//     ^^^^^^^^
console.dir(lib.libPart1);
console.dir(lib.libPart2);
相关问题