0.4.1 • Published 8 months ago

@ebullience/webpack v0.4.1

Weekly downloads
-
License
Apache
Repository
github
Last release
8 months ago

@ebullience/webpack

webpack配置运行文件(使用webpack5,webpack-dev-server4)

npm i -D @ebullience/webpack

使用方法

命令式(会自动使用build.config.js的配置)

eb-webpack dev
eb-webpack build

js代码

import webpackTask from '@ebullience/webpack';

// taskType表示任务类型
// configPath表示配置文件位置
webpackTask(taskType, configPath)

taskType:任务类型

为枚举值:dev、build

分别表示开发和部署模式

configPath:配置文件位置

配置文件的地址,默认项目根目录下的:build.config.js

配置说明

配置项功能类型默认值备注
isBuild是构建还是开发模式booleanfalse
inputFile入口文件地址string/string[]library为ture时为index.ts,否则为index.tsx为字符串为单页应用,为字符串数组为多页应用
outputName输出文件名称string''
rootDir项目根目录stringprocess.cwd()
srcDir源代码目录string'src'
staticDir静态文件目录string'static'
outputDir输出文件目录string'dist'
publicPath公共文件路径string/() => stringlibrary为true时为'./',否则为'/'同webpack配置
aliasDir目录路径别名配置Record<string, string>{}
fallbackDir目录路径回退配置Record<string, string>{}
showDetailProgress是否显示详细打包日志booleanfalse
host开发时本地hoststring0.0.0.0
port开发时本地portstring8888
theme主题配置文件Record<string, string/number>{}用于定制antd等库等主题
libOnDemand对于某些库按需加载打包配置Partial\[][]用于antd等库
supportIE是否支持iebooleanfalse
library是否打包库booleanfalse为true时用于组件等开发,否则会自动匹配入口脚本同名的html文件
libraryName打包库时库的名称string''
libraryWithStyle打包组件库时库时是否有样式文件booleanfalse
internalLib内部库配置,声明的库会被单独打包,多模块共用Record<string, string>{}配置对象的key为node_modules中的库文件夹名,value为打包时组合的库名(文件名前缀),如果为空,则默认为vendor
externalLib外部库配置,声明的库不会被打包至dist中Record<string, string>{}配置对象的key为node_modules中的库文件夹名,value为在全局作用域下的名称(比如挂在window哪个属性下)
compileLib需要编译的库,声明的库如果是js文件引用也会被babel编译string[][]每一项为node_modules中的库文件夹名
processEnv打包时配置的环境变量{ propName: string: any }{}
proxy开发时代理配置{ propName: string: string }{}本地请求转发,同部署时nginx配置
extendwebpack自定义配置扩展,可以修改默认配置(config?: Configuration) => Configurationundefined
gzipOnly是否只保留gzip压缩后的包booleantrue
chunkMaxSizechunk最大文件大小(kb)number1000