Javascript ES6:如何导入和导出模块以及保持从控制台的访问

Javascript ES6:如何导入和导出模块以及保持从控制台的访问,javascript,ecmascript-6,uikit,babeljs,Javascript,Ecmascript 6,Uikit,Babeljs,通常我可以从控制台触发UIkit功能,如: UIkit.alert('.myalert').close(); 我有一个小例子,其中我使用UIkit和一个伪函数。 编译此文件时,我不再可以通过控制台访问: import UIkit from 'uikit'; import Icons from './uikit/uikit-icons'; UIkit.use(Icons); import Myfunction from './myfunction'; document.addEventLis

通常我可以从控制台触发UIkit功能,如:

UIkit.alert('.myalert').close();
我有一个小例子,其中我使用UIkit和一个伪函数。 编译此文件时,我不再可以通过控制台访问:

import UIkit from 'uikit';
import Icons from './uikit/uikit-icons';
UIkit.use(Icons);

import Myfunction from './myfunction';

document.addEventListener('DOMContentLoaded', () => {
    Myfunction('something');
})
我在导出UIkit时添加了以下内容:

export default { UIkit };

在导入后添加
window.UIkit=UIkit
import

我认为必须是
导出默认UIkit
因为现在导出对象时,
UIkit
是它的键。
但您也需要将
UIkit
导入
myfunction

我也尝试了
export default UIkit
,但无法从控制台进行访问。另一种方法是在执行
window.UIkit=UIkit
操作的地方创建一个文件,然后您必须在主文件中导入“/”
,这个答案并没有真正解决问题。OP使用ES6的特性属性值速记,但这种方法对内存管理来说是个问题吗?这会导致两个UIKit并行运行吗?不,是同一个实例,只是它现在是一个全局变量,可以从consoleOK访问,谢谢。我仍然不明白为什么香草UIkit可以通过控制台访问。他们只是从
UIkit.js
导出默认UIkit,这不是
UIkit
的问题,而是使用ES6
导入/导出
语法的任何模块