怎样通过 webpack 打包匹配部分代码块?

发布于 2022-09-07 04:24:25 字数 326 浏览 17 评论 0

eg:


if(isProd){
    //do something for prods

   
}else{
   //do something for others
}

通过 webpack 打包之后只剩下 生产的代码块。 

//do something for prods

gulp 中有对应的插件,就是通过正则匹配过滤。webpack 中暂时没有发现对应的插件!有没有推荐的。谢谢!

我知道怎么判断环境,关键需要的是把非生产环境的代码段给去掉(打包时),减少部署的代码量!做到生产环境中只有生产相关的代码,没有其他环境的判断逻辑代码存在!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

递刀给你 2022-09-14 04:24:25

webpack有一个简单的插件 裁剪代码块 挺好用的 webpack-dists-loader https://www.npmjs.com/package...

街角迷惘 2022-09-14 04:24:25

没明白你的意思 你是想做按需加载么 ? 如果是推荐你看一下路由切割

酒与心事 2022-09-14 04:24:25

webpack有个插件叫DefinePlugin

猫卆 2022-09-14 04:24:25

你的意思是webpack中的plugins中的这个配置吗?

new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: '"production"'
      }
    }),

这个是打包的时候告知webpack的,如果你想要自己做if判断的话,可以自己在启动项目的时候设置变量,例如

//npm start的启动想可以是 cross-env NODE_ENV=development || cross-env NODE_ENV=production

// 前者是开发,后者呢就是生产环境了
const prod = process.env.NODE_ENV === 'production' ? true : false;
猫卆 2022-09-14 04:24:25

123生产环境和开发环境

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文