首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将webpack 2配置作为函数导出可以阻止转译吗?

将webpack 2配置作为函数导出可以阻止转译。在webpack 2中,配置文件可以导出一个函数,该函数接收两个参数:环境变量和webpack配置对象。通过将配置文件导出为函数,可以根据不同的环境变量动态生成不同的配置。

使用函数导出配置的一个常见用例是根据环境变量来决定是否启用转译。例如,可以根据环境变量来判断是否需要使用Babel进行ES6转译。在函数中,可以根据环境变量的值来动态配置webpack的loader和plugin,从而实现阻止转译的效果。

下面是一个示例代码:

代码语言:txt
复制
module.exports = (env, argv) => {
  const isProduction = argv.mode === 'production';

  const config = {
    // 其他配置项...
  };

  if (!isProduction) {
    config.module = {
      rules: [
        {
          test: /\.js$/,
          exclude: /node_modules/,
          use: {
            loader: 'babel-loader',
            options: {
              presets: ['@babel/preset-env']
            }
          }
        }
      ]
    };
  }

  return config;
};

在上面的示例中,根据argv.mode的值判断当前环境是否为生产环境。如果不是生产环境,则在配置中添加一个针对JavaScript文件的loader,使用Babel进行转译。

这样,当使用webpack打包项目时,如果是生产环境,则不会进行转译,否则会使用Babel进行转译。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)、腾讯云容器服务(TKE)、腾讯云函数计算(SCF)。

腾讯云产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 读书笔记之webpack实战

    1.commonjs只会对require的代码执行一次 之后的require只会直接取其导出值 2.es6 Module动态映射,CommonJs是值拷贝,前者可以支持一定程度的循环依赖,需要由开发保证导入时,已经设置好正确的导出值 3.通过单独加载包内的单独文件,从而减小打包体积 4.当第三方依赖较多时,我们可以用提取vendor的方法将这些模块打包到一个单独的bundle中,以更有效地利用客户端缓存,加快页面渲染速度。 5.webpack指定生成目录: webpack.config.js:配置output的path 6.与loader相关的配置都在module对象中,其中module.rules代表了模块的处理规则 7.两个一般一起使用: css-loader:处理css的加载语法 style-loader:将css插入页面 8.在Webpack中,我们认为被加载模块是resource,而加载者是issuer,可以配置哪个js可以加载css rules: [ { test: /.cssKaTeX parse error: Can't use function '\.' in math mode at position 119: … test: /\̲.̲js/, include: /src/pages/, }, } ], 9.enforce可以强制指定loader的执行顺序,分四种: normal:直接定义的默认 pre:代表它将在所有正常loader之前执行 post:和pre相反,代表它需要在所有loader之后执行 inline :webpack不推荐使用

    03
    领券