基于 easywebpack 工程体系,你能非常简单,快速的编写出 webpack 复杂的配置,你无需过多关心热更新,是否压缩,是否Hash,公共JS/CSS,DLL,构建速度等问题,这些 easywebpack 都已经帮你解决和优化了。
easywebpack 提供 Vue/React/JS/HTML 等多种前端框架的 Webpack 构建解决方案,同时结合 easywebpack-cli 工具能够快速的进行项目开发。

Webpack 集成配置编写

根据 easywebpack 拿到基础配置后,你可以根据自己的需要进行修改和增强。

基于 easywebpack 编写配置

const easy = require('easywebpack');
module.exports = easy.getWebpackConfig({
  env: process.env.BUILD_ENV,  // 支持dev, test, prod 模式
  target: 'web',
  entry: {
    app: 'src/lib.js'
  }
});

打印出来效果

env 环境说明

默认支持 dev, test, prod 模式,你可以根据自己场景定制

开发环境(easy build dev)

  • 开启 devtool 和 source-map
  • 开启 HMR 热更新, 内存编译,构建文件不落地磁盘
  • js, css, image 不压缩
  • js, css, image 不 Hash

测试环境(easy build test)

  • 禁用 devtool 和 source-map
  • 禁用 HMR 热更新, 构建文件落地磁盘
  • js, css, image 禁用压缩
  • js, css, image 开启 Hash
  • css 分离出独立的 css 文件

正式环境(easy build prod)

  • 禁用 devtool 和 source-map
  • 禁用 HMR 热更新, 构建文件落地磁盘
  • js, css, image 开启压缩
  • js, css, image 开启 Hash
  • css 分离出独立的 css 文件

解决方案

获取 Vue 项目配置

默认 Node 和 Web 构建的 Webpack 配置,总共两个配置, 通过 target: web 获取前端配置

const easy = require('easywebpack-vue');
const webpackConfig = easy.getWebpackConfig({
  env: process.env.BUILD_ENV,  // 支持dev, test, prod 模式
  target: 'web',
  entry: {
    app: 'src/lib.js'
  }
});

获取 React 项目配置

默认 Node 和 Web 构建的 Webpack 配置,总共两个配置, 通过 target: web 获取前端配置

const easy = require('easywebpack-react');
const webpackConfig = easy.getWebpackConfig({
  env: process.env.BUILD_ENV,  // 支持dev, test, prod 模式
  target: 'web',
  entry: {
    app: 'src/lib.js'
  }
});

获取 HTML 项目配置

const easy = require('easywebpack-html');
const webpackConfig = easy.getWebpackConfig({
  env: process.env.BUILD_ENV,  // 支持dev, test, prod 模式
  template: 'src/template.html'
  entry: {
    app: 'src/lib.js'
  }
});

获取 JS 打包配置

const easy = require('easywebpack-js');
const webpackConfig = easy.getWebpackConfig({
  env: process.env.BUILD_ENV,  // 支持dev, test, prod 模式
  entry: {
    app: 'src/lib.js'
  }
});

Author: sky
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint polocy. If reproduced, please indicate source sky !
 Previous
Egg + Vue/Nunjucks 服务端渲染性能测试 Egg + Vue/Nunjucks 服务端渲染性能测试
知乎专栏:https://zhuanlan.zhihu.com/p/30683070在用Vue做服务端渲染时,大家对Vue服务端渲染的性能持怀疑态度,业界也有一些尝试,不过完整的产品项目和数据分析比较少。结合线上和本地压测,我们对 Vue 和 Nunjucks 针对模板渲染Render时间,C...
2019-10-19 sky
Next 
常见问题 常见问题
2019-10-19 sky