开发服务

easywebpack 整个体系提供的开发构建服务是基于 koa 实现的,用于支持各种类型项目(服务端渲染,前端渲染,静态页面,本地内存编译等),实现了 内存编译,热更新,发布编译,[代理](https://webpack.js.org/configuration/dev-server/#devserver-proxy),[historyApiFallback](https://webpack.js.org/configuration/dev-server/#devserver-historyapifallback)等功能,其中代理和historyApiFallback配置只在纯前端项目起作用。具体实现请见 [webpack-tool ](https://github.com/easy-team/webpack-tool)插件。 easywebpack-cli  和 [egg-webpack](https://github.com/easy-team/egg-webpack) 都依赖该插件。

纯前端渲染项目

//${root}/webpack.config.js
module.exports = {
 entry:{
    index: './src/index.js'
  },
  module:{
    rules:[]
  }
  plugins: [],
  devServer: { 
    open: 'http://127.0.0.1:8888',
    // https://webpack.js.org/configuration/dev-server/#devserver-before
    before: before => { 
      // register koa middleware
    },
    // https://webpack.js.org/configuration/dev-server/#devserver-after
    after: app => {
      // register koa middleware
    },
    // https://webpack.js.org/configuration/dev-server/#devserver-proxy
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        pathRewrite: {'^/api' : ''}
      }
    },
    // https://webpack.js.org/configuration/dev-server/#devserver-historyapifallback
    historyApiFallback: {
      index: '/app.html' // 默认 index.html
    }
  }
}

服务端渲染项目

Egg 服务端渲染项目时,devServer 配置是无需的,即使配置了也无效。代理和historyApiFallback通过项目的 Node 服务处理。


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
DLL 构建 DLL 构建
Webpack Dll 构建在 3.5.0 版本之前,webpack 构建随着项目越来越来大,打包也就越来越慢; 同时 dll 工程化构建也没有内置支持。虽然可以通过在 easywebpack 中添加 new webpack.DllPlugin() 和 webpack.DllReference...
2019-12-23 sky
Next 
entry entry
entry 基本配置config.entry : {String|Object} Webpack 构建入口文件配置 这里的entry 对 Webpack 的 entry 进行了增强, 除了支持 webpack 原生 Object(key:
2019-12-23 sky