期望模块在特定环境中成为全局模块

时间:2017-12-20 18:22:11

标签: webpack

我想制作一个满足全局范围的导入依赖关系的webpack配置。如,

import * as $ from 'jquery';

对于一个webpack配置,我希望它被捆绑。另一方面,我希望它从窗口获取$。帮助赞赏

2 个答案:

答案 0 :(得分:0)

您可以使用 expose-loader 来定义全局模块。为此,您必须安装 expose-loader 并设置如下规则:

//install expose-loader
npm install --save-dev expose-loader

//set up rule (just relevant parts)
module.exports = {
  module: {
    rules: [
      {
        test: require.resolve('jquery'),
        use: [{
          loader: 'expose-loader',
          options: 'jQuery'
        }, {
          loader: 'expose-loader',
          options: '$'
        }]
      }
    ]
  }
}

答案 1 :(得分:0)

我发现NormalModuleReplacementPlugin会做我想做的事。使用我的所有deps包的标准版本,使用一个垫片导出窗口$为我的版本,期望它已经可用。