12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- const CompressionWebpackPlugin = require('compression-webpack-plugin')
- const path = require('path')
- const CopyWebpackPlugin = require('copy-webpack-plugin')
- module.exports = {
- // eslint-loader 是否在保存的时候检查
- lintOnSave: true,
- // webpack配置
- configureWebpack: config => {
- if (process.env.UNI_PLATFORM === 'h5') {
- // 开启gzip压缩
- config.plugins = [
- ...config.plugins,
- new CompressionWebpackPlugin({
- filename: '[path].gz[query]',
- algorithm: 'gzip',
- test: new RegExp('\\.(' + ['js', 'css'].join('|') + ')$'),
- threshold: 8192,
- minRatio: 0.8,
- }),
- ]
- // public目录下文件文件设置为静态资源目录
- config.plugins = [
- ...config.plugins,
- new CopyWebpackPlugin([
- {
- from: path.join(__dirname, 'public'),
- to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM),
- },
- ]),
- ]
- }
- },
- // 生产环境是否生成 sourceMap 文件
- productionSourceMap: false,
- // css相关配置
- css: {
- sourceMap: process.env.NODE_ENV !== 'production',
- loaderOptions: {
- scss: {
- prependData: `@import "~@/common/scss/public.scss";`,
- },
- },
- },
- // webpack-dev-server 相关配置
- devServer: {
- open: false, // 配置自动启动浏览器
- port: 8080, // 端口号
- https: false,
- hotOnly: true,
- disableHostCheck: true,
- proxy: '',// 设置代理
- },
- // 第三方插件配置
- pluginOptions: {},
- }
|