我有自己的内部WEB应用程序模块系统 - 主要概念是应用程序是动态的,即可以在运行时添加/删除模块。由于这个原因,我不能使用捆绑和单独加载单独的模块。请求一个单独的模块可以导致100个其他模块作为依赖项加载 - 使用自己的加载器的当前实现使得它异步并呈现良好的进度条,以便慢速连接的用户知道他们需要等待多长时间。
目前我正在评估切换到模块的ES6语法的替代方案,以及切换到github上存在的一些与ES6兼容的模块加载器。
所以问题是 - 是否有与ES6兼容的模块加载器,其API提供类似的事件:
这必须至少在以下浏览器中运行:Chrome(最新),Firefox(最新),IE11。
答案 0 :(得分:0)
我建议将ES6模块转换为AMD,并使用支持所需功能的AMD模块加载器。例如,Dojo实现似乎有tracing events。
或者,无论使用何种模块加载器,您都可以使用resource timing API跟踪模块资源的加载。它似乎没有触发事件,但你应该可以轮询它。