我正在使用一个使用旧学校技术(jQuery和直接DOM操作)构建的前端应用程序,我想将其移至ES8和React。由于这是一个相当大而复杂的应用程序,因此这一举措必须是渐进的,这意味着遗留代码和React代码必须在一段时间内并存。
遗留代码使用家庭酿造“模块加载器”,需要继续工作。我一直在寻找使用Webpack及其配置选项libraryTarget: 'var'
,它基本上将每个入口点输出到一个全局变量中。这可行,但Webpack的性能(构建时间)不够好,所以我一直在考虑使用ParcelJS。
使用ParcelJS可以获得与Webpack libraryTarget: 'var'
类似的东西吗?基本上,在“遗留HTML文件”(通常是服务器生成并且可能包含我需要传递给ES8模块的数据)中,我希望能够按照
<script src="dist/js/ABundle.js"></script> <!-- Bundle created by ParceJS -->
<script>
var data = {/* JSON generated by server */};
var ABundle = require('ABundle'); // Export defined in ABundle.js.
ABundle.render(data); // Function exported in ABundle.
</script>
请注意,我无法将我的HTML文件作为ParcelJS的入口点传递,因为它们包含对使用自制模块加载器的Javascript文件的引用,这对于ParcelJS不会很好。我只想将ES8模块作为ParcelJS的入口点并将它们与家用brew模块加载器并排使用。
编辑:澄清遗留的HTML实际上是服务器生成的。