美文网首页
webpack 没有按需打包

webpack 没有按需打包

作者: Gopal | 来源:发表于2019-03-20 14:46 被阅读0次

问题描述

在打包过程中,我们所希望的肯定都是按需打包,要不然我们最终出来的目录将会很大。
看这段代码

let api
if (process.env.IS_WX_MINI) {
  api = require('./index.mp').default
  console.log(`api:${api}`)
  console.log(`api:${JSON.stringify(api)}`)
} else {
  api = MST.default.api
}
console.log(`api:${JSON.stringify(api)}`)
export default api

我们希望在 web 端打包的时候,不会去打包 ./index.mp 目录下的东西。但实际的情况是,并没有做到忽略这个路径。

那么问题出现在哪里?

解决过程

其实在 web 端打包的时候,我们发现 process.env.IS_WX_MINI 值为 undefined,这是因为我们没有在 web 端,webpack 的配置中没有配 IS_WX_MINI 这个参数。

配置 webpack

config = merge(config, {
  plugins: [
    new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: '"development"',
        IS_WX_MINI: 'false'
      }
    })
  ]
})

这个时候就可以了。查了一下 DefinePlugin 这个插件的使用,发现它确实有这种能力。 如下所示:

参考

webpack DefinePlugin

webpack 中为什么要使用 define Plugin

相关文章

  • webpack 没有按需打包

    问题描述 在打包过程中,我们所希望的肯定都是按需打包,要不然我们最终出来的目录将会很大。看这段代码 我们希望在 w...

  • webpack 入门

    webpack 是什么? webpack是模块化管理工具,使用webpack可以对模块进行压缩、预处理、按需打包、...

  • webpack 入门

    webpack 是什么? webpack是模块化管理工具,使用webpack可以对模块进行压缩、预处理、按需打包、...

  • 按需引入和Treeshaking的区别

    按需引入是在babel编译过程中,按需只引入相关代码。tree shaking是在webpack打包阶段,移除 J...

  • 用webpack实现模块懒加载、预取/预加载

    模块懒加载本身与webpack没有关系,webpack可以让懒加载的模块代码打包到单独的文件中,实现真正的按需加载...

  • Webpack优化

    Webpack优化打包速度:按需引入压缩代码每个路由页面单独打包使用时再去下载 性能优化:v-if代替v-show...

  • 前端性能优化

    组件的按需引入 webpack打包 js切割 静态资源使用cnd nginx 开启gzip压缩 合理利用缓存

  • echarts按需加载

    echart使用时建议按需引入,通过webpack-bundle-analyzer对打包文件体积和依赖关系可以看出...

  • 4.11.1 用 Webpack 实现按需加载

    4.11.1 用 Webpack 实现按需加载 问题一: 用 Webpack 实现按需加载? Webpack 内置...

  • .webpack4.x 配置篇

    webpack 是一个打包工具,进行代码分割,模块通过loader处理各种文件,模块打包器,按需加载,使初始化加载...

网友评论

      本文标题:webpack 没有按需打包

      本文链接:https://www.haomeiwen.com/subject/mpwzmqtx.html