需要有关模块装载机/捆扎机的一些建议

时间:2018-11-20 19:04:39

标签: javascript module bundling-and-minification transpiler

当前情况:

  • SPA,由大约200个AMD模块组成
  • 其中有些是第三方的,所以我不能重写它们
  • 已经将自己的代码重写为ES2017,ES6模块语法除外(因此仍使用AMD)
  • 使用文本插件和动态“ require()”调用
  • 2个构建版本:ES2017和1x ES5(用于旧版浏览器)
  • 通过requireJS加载,使用r.js捆绑并使用闭包编译器进行编译
  • 开发环境在标准apache上运行

因此,此设置当然有些陈旧,我正在寻找一种使构建过程现代化的方法。我最终希望从AMD迁移到ES6模块,但是我无法一次重写所有模块,并且无法重写任何第三方模块,因此我需要一个既支持AMD样式又支持新ES6模块样式的解决方案-也许相当一段时间。

我想保留直接在开发中使用源代码的能力。即现在,我更改了源代码并重新加载了浏览器,仅此而已。所以目前我没有任何移植步骤可供开发,我的开发浏览器仅本地运行(未捆绑)ES2017代码。

所以我不想在开发时完全移植到ES5(如果只处理特定于加载程序/模块的东西,我可以在浏览器中进行最少的移植),而且我也不想包含任何东西也可以将其捆绑到那里,只需获取我的原始源文件,然后以最小的开销将它们加载到浏览器中。而且我不想拥有另一个特殊的开发服务器,出于多种原因,我必须在Apache上运行我的项目。

现在,有没有什么工具可以完全满足我的要求?如果是,哪一个?从理论上来讲,我对我拥有的所有各种选择都感到迷茫,非常感谢您的帮助!

PS:对于实际的生产版本,我当然希望捆绑,并且至少对于“旧版本”也要移植,但是由于这没什么大不了的,所以我现在主要关注我的开发人员。

0 个答案:

没有答案