【问题标题】:Configure webpack to ignore define statement配置 webpack 以忽略 define 语句
【发布时间】:2015-11-06 11:22:46
【问题描述】:

如何配置 webpack 以忽略文件中的 amd 'define' 语句,就像我可以使用带有外部选项的 'require' 一样?

【问题讨论】:

    标签: javascript requirejs require amd webpack


    【解决方案1】:

    官方是recommendeddefine设置为false,imports-loader

    loaders: [
      { test: /\.js/, loader: 'imports?define=>false'}
    ]
    

    但只有在 define 以 UMD 样式调用时才有用 - 如下所示:

    if (typeof define === 'function' && define.amd) {
      define([], factory)
    }
    

    如果您可以更改调用 define 的代码并且没有 UMD 的 if 这对我有用:

    var define = window['infor']; // keep webpack out of way
    
    // use define from global scope (requirejs or other used loader) as needed
    define('mymodule', ['dep1'], function (dep1) {
      return {}
    });
    

    【讨论】:

      【解决方案2】:

      如此处所述:https://github.com/webpack/webpack/issues/3017#issuecomment-285954512

      你可以这样做:

      module: {
        rules: [
          { parser: { amd: false } }
        ]
      }
      

      【讨论】:

        猜你喜欢
        • 2023-03-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-20
        • 1970-01-01
        • 2015-11-27
        • 2021-11-15
        • 2017-09-22
        相关资源
        最近更新 更多