webpack 打包出现 if (false) {}

vue项目用webpack 打包后 代码里面大量出现了 if(false) {} 这样的条件语句, 可以在打包时配置去掉吗

阅读 3.3k
3 个回答

提供代码截图。webpack 配置及版本。

你看到的是压缩前的吧?压缩后应该会执行 tree-shaking,看一下是不是就没了

是否使用了 process.env.NODE_ENV 来进行环境判断?

if (process.env.NODE_ENV === 'development') {
    // do something...
}

假设打包时为生产环境,process.env.NODE_ENV === 'development' 将会被静态替换为结果 false

打包时使用 webpack 推荐的 TerserPlugin 就可以优化掉,

webpack 官网介绍

const TerserPlugin = require("terser-webpack-plugin");

module.exports = {
  optimization: {
    minimize: true,
    minimizer: [new TerserPlugin()],
  },
};
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题