Javascript 网页包加载遗留代码

Javascript 网页包加载遗留代码,javascript,webpack,bundle,Javascript,Webpack,Bundle,我是一个网页包初学者,正在尝试通过使用Sign Webpack和Babel将一个旧的JavaScript/jQuery应用程序分解到几个ES6模块中来重构它 到目前为止,我已经成功地重构了应用程序的核心组件,但现在我被一个需要jQuery(v2.2)和另一个全局范围可用库()的模块绊倒了 问题在于BIMsurfer库不是作为模块设计的,而是使用Grunt生成一个缩小的文件 我已经看到我可以使用网页包.ProvidePlugin,但我遇到了以下错误: TypeError:$.extend不是函数

我是一个网页包初学者,正在尝试通过使用Sign Webpack和Babel将一个旧的JavaScript/jQuery应用程序分解到几个ES6模块中来重构它

到目前为止,我已经成功地重构了应用程序的核心组件,但现在我被一个需要jQuery(v2.2)和另一个全局范围可用库()的模块绊倒了

问题在于BIMsurfer库不是作为模块设计的,而是使用Grunt生成一个缩小的文件

我已经看到我可以使用
网页包.ProvidePlugin
,但我遇到了以下错误:


TypeError:$.extend不是函数[bimsurfer.js:14]

我用最少的代码创建了一个复制错误的


我的目标是用我的JavaScript库生成一个可以在多个应用程序中重复使用的包。

下载了您的repo并进行了一些测试。网页包配置很好。但还有其他问题需要解决

  • src/libs/jquery.js文件为空
  • 在src/libs/bimsurfer/bimsurfer.js文件的第15015行和第22438行,WebGLDebugUtils和SceneJS_pubsubxy的声明缺少
    var
    关键字

  • 解决这两个问题后,您应该能够在chrome devtool中看到一个干净的控制台。

    谢谢!
    jquery
    是示例中的一个错误。。。我还修复了另一个,现在它可以工作了。但还有一点让我感到困扰:BIMsurfer文件与旧版应用程序中使用的是同一个文件,在该应用程序中,无需添加缺少的
    var
    ,即可正常工作。为什么?这是特定于Webpack捆绑包的内容,或者原始回购协议中存在错误?如果检查输出捆绑包文件,您会发现Webpack add
    use strict添加到所有模块!。这就是你出错的原因。有关更多详细信息,请检查并重试