Javascript 如何使用要加载到脚本标记中的webpack连接和绑定JS文件

Javascript 如何使用要加载到脚本标记中的webpack连接和绑定JS文件,javascript,webpack,webpack-loader,Javascript,Webpack,Webpack Loader,我正在努力寻找一种“快速”的方法来将一些遗留javascript文件从assetic转换到webpack。我(认为我)需要找到一种方法来捆绑一组javascript文件,方法是简单地将它们连接起来,而不是让webpack将其包装在jsonp中 我们的平台是在Symfony中构建的,使用twig模板,我们使用assetic加载了大部分遗留javascript文件(它只是简单地连接和缩小),我们将更新的javascript/typescript文件与webpack捆绑在一起 当然,我想删除所有ass

我正在努力寻找一种“快速”的方法来将一些遗留javascript文件从assetic转换到webpack。我(认为我)需要找到一种方法来捆绑一组javascript文件,方法是简单地将它们连接起来,而不是让webpack将其包装在jsonp中

我们的平台是在Symfony中构建的,使用twig模板,我们使用assetic加载了大部分遗留javascript文件(它只是简单地连接和缩小),我们将更新的javascript/typescript文件与webpack捆绑在一起

当然,我想删除所有assetic依赖项,并使用webpack捆绑旧的javascript。然而,由于webpack生成捆绑包的方式,它被包装在jsonp中,并且在这些javascript文件中定义的任何函数/变量在全局范围内都不可用

在一个粗俗的世界里,我们的细枝文件中充斥着以下内容:

{%- javascripts
    '%kernel.root_dir%/../vendor/twbs/bootstrap/js/bootstrap-transition.js'
    '@MyBundle/Resources/js/legacy-1.js'
    '@MyBundle/Resources/js/legacy-2.js'
    filter="?uglifyjs2"
    output="js/compiled/page-one.js" %}
    <script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
因此,我正在寻找一种将文件连接在一起的方法。创建一个单独的条目文件,并将其作为文件加载是不够的,因为
require
s/
import
s将无法解决

我知道
webpack-concat插件
需要我在webpack-config中预先定义所有要concat的文件,这是不可能的

我还没有遇到一个加载程序可以用这个js文件的内容替换
import'@MyBundle/Resources/js/legacy-2.js'
,但也许我遗漏了一些东西

我想知道在所有这些努力之后,试图找到一个简单的解决方案是否比重写遗留javascript以使用模块的努力更大


我找到了以下答案,但它们并没有真正帮助我:

  • -这假设我可以预先定义要连接的文件。我有将近100种不同的包括使用assetic,几乎所有的都使用不同的文件
  • -
    eval
    被我们的CSP禁用
  • -正如我提到的,我并不想为此创建100个“条目”文件,
    webpack raw bundler
    也要求在webpack config文件中预先定义所有内容
<script src='{{ webpack_asset('%kernel.root_dir%/../vendor/twbs/bootstrap/js/bootstrap-transition.js?asFile') }}"></script>
<script src='{{ webpack_asset('@MyBundle/Resources/js/legacy-1.js?asFile') }}"></script>
<script src='{{ webpack_asset('@MyBundle/Resources/js/legacy-2.js?asFile') }}"></script>