如何在 CDN link 之前使用 webpack jQuery

How to use jQuery with webpack before CDN link

是否可以在需要 like in RequireJS 时从 CDN 加载外部 jQuery?我的意思是在配置中的某处指定外部 jQuery 源(在 CDN 上),然后以 CommonJS(或 AMD)样式使用它:

$ = require('jquery')

问题是我的自定义脚本位于jQuery的CDN link之上,所以我有'can' t find variable jQuery'错误。从原理上讲,我的代码如下所示:

<script src="custom_code.js'>
  // uncompiled source like:
  define(['jquery', '../../node_modules/baconjs/dist/Bacon.js'], function($, bacon) {
    console.log 'ok'
  });
</script>
...
<script src="//yastatic.net/jquery/2.1.3/jquery.min.js"></script> 

阅读 this post 并使用 require.ensure 后,我设法让它工作了。 custom_code.js:

require.ensure(['jquery', '../../node_modules/baconjs/dist/Bacon.js'], function(require){
  var $ = require 'jquery'
  var bacon = require '../../node_modules/baconjs/dist/Bacon.js'

  $('.content').prepend('it works!')
});

我在 webpack 配置中添加了

externals: { jquery: "jQuery" },

在这种情况下,webpack 将使用 Bacon.js.

对已编译的包发出额外请求

我还是想知道如果客户端加载 Bacon.js 之前 jQuery 将从 CDN 加载会怎样?